@charset "UTF-8";@font-face{font-family:Plus Jakarta Sans;src:url(/assets/PlusJakartaSans-Variable-COgupjDA.woff2) format("woff2-variations");font-weight:200 800;font-display:swap;font-style:normal}@font-face{font-family:JetBrains Mono;src:url(/assets/JetBrainsMono-Variable-BeqGHA24.woff2) format("woff2-variations");font-weight:100 800;font-display:swap;font-style:normal}@theme{ --color-brand-primary: #5B9BD5; --color-brand-primary-hover: #7DB3E0; --color-brand-light: #23303F; --color-brand-accent: #5B9BD5; --color-sidebar-accent: #5B9BD5; --color-bg-page: #13171F; --color-bg-surface: #242B3D; --color-bg-surface-hover: #2E374C; --color-bg-inset: #1C212E; --color-sidebar-bg: #10141C; --color-text-primary: #E6EAF2; --color-text-secondary: #A8B0C0; --color-text-muted: #909AAC; --color-text-inverse: #0B0E14; --color-border-default: #2A3142; --color-border-subtle: #1F2532; --color-border-input: #3D4660; --color-border-focus: #5B9BD5; --color-status-high-bg: #2A1414; --color-status-high-text: #F87171; --color-status-medium-bg: #2A2008; --color-status-medium-text: #F5B544; --color-status-low-bg: #11203D; --color-status-low-text: #6BA5FA; --color-status-resolved-bg: #0F2A1A; --color-status-resolved-text: #4ADE80; --color-status-unassigned: #F5B544; --color-status-inprogress: #5B9BD5; --color-status-closed: #4ADE80; --color-alert-success: #4ADE80; --color-alert-error: #F87171; --color-alert-warning: #F5B544; --color-alert-info: #6BA5FA; --color-priority-high: #F87171; --color-priority-medium: #F5B544; --color-priority-low: #6BA5FA; --color-role-admin: #A78BFA; --color-role-admin-bg: rgba(167, 139, 250, .16); --color-role-technician: #FBBF24; --color-role-technician-bg: rgba(251, 191, 36, .14); --color-role-super-user: #5B9BD5; --color-role-super-user-bg: rgba(91, 155, 213, .14); --color-presence-online: #4ADE80; --color-presence-offline: #A8B0C0; --radius-sm: 6px; --radius-md: 8px; --radius-lg: 12px; --radius-xl: 16px; --radius-full: 9999px; --shadow-sm: 0 1px 2px rgba(0, 0, 0, .35); --shadow-md: 0 6px 16px rgba(0, 0, 0, .45); --shadow-lg: 0 12px 32px rgba(0, 0, 0, .55); --font-sans: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; --font-mono: "JetBrains Mono", "SF Mono", "Fira Code", ui-monospace, monospace; --text-xs: .75rem; --text-sm: .8125rem; --text-base: .875rem; --text-lg: 1rem; --text-xl: 1.125rem; --text-2xl: 1.25rem; --text-3xl: 1.5rem; --text-4xl: 1.875rem; --leading-tight: 1.25; --leading-normal: 1.5; --leading-relaxed: 1.625; }:root{--bg-page: #F8FAFC;--bg-surface: #FFFFFF;--bg-surface-hover: #F1F5F9;--bg-inset: #F1F5F9;--sidebar-bg: #0F172A;--border-default: #E2E5EC;--border-subtle: #EEF0F4;--border-input: #C7CCD6;--border-focus: #1A6FB5;--text-primary: #0F172A;--text-secondary: #64748B;--text-muted: #94A3B8;--text-inverse: #FFFFFF;--brand-primary: #1A6FB5;--brand-primary-hover: #145A94;--brand-light: #EFF6FF;--brand-accent: #0EA5E9;--sidebar-accent: #38BDF8;--status-high-bg: #FEF2F2;--status-high-text: #DC2626;--status-medium-bg: #FFFBEB;--status-medium-text: #D97706;--status-low-bg: #EFF6FF;--status-low-text: #2563EB;--status-resolved-bg: #F0FDF4;--status-resolved-text: #16A34A;--status-unassigned: #D97706;--status-inprogress: #1A6FB5;--status-closed: #16A34A;--alert-success: #16A34A;--alert-error: #DC2626;--alert-warning: #D97706;--alert-info: #2563EB;--priority-high: #DC2626;--priority-medium: #D97706;--priority-low: #2563EB;--role-admin: #8B5CF6;--role-admin-bg: rgba(139, 92, 246, .12);--role-technician: #F59E0B;--role-technician-bg: rgba(245, 158, 11, .12);--role-super-user: #4878A8;--role-super-user-bg: rgba(72, 120, 168, .12);--presence-online: #22C55E;--presence-offline: #94A3B8;--bg-elevated: #F1F5F9;--status-available: #4A9A6E;--status-completed: #4A9A6E;--status-enroute: #4878A8;--status-onsite: #B8893A;--status-late: #C25450;--status-offline: #64748B;--text-disabled: #CBD5E1;--text-on-brand: #FFFFFF;--job-cctv: #C25450;--job-cctv-gradient: linear-gradient(135deg, #9E3F3C, #C25450);--job-cctv-text: #9E3F3C;--job-ecm: #4878A8;--job-ecm-gradient: linear-gradient(135deg, #385F8A, #4878A8);--job-ecm-text: #1A6FB5;--job-flow: #A8637E;--job-flow-gradient: linear-gradient(135deg, #884E65, #A8637E);--job-flow-text: #884E65;--job-heatstress: #B8893A;--job-heatstress-gradient: linear-gradient(135deg, #946B2A, #B8893A);--job-heatstress-text: #946B2A;--job-slm: #4A9A6E;--job-slm-gradient: linear-gradient(135deg, #3A7A58, #4A9A6E);--job-slm-text: #2D7A4E;--job-vibration: #4A96A0;--job-vibration-gradient: linear-gradient(135deg, #3A7880, #4A96A0);--job-vibration-text: #3A7880;--job-vms: #8B6DB5;--job-vms-gradient: linear-gradient(135deg, #6E5494, #8B6DB5);--job-vms-text: #6E5494;--text-xs: .75rem;--text-sm: .8125rem;--text-base: .875rem;--text-lg: 1rem;--text-xl: 1.125rem;--text-2xl: 1.25rem;--text-3xl: 1.5rem;--text-4xl: 1.875rem;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.625;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 12px rgba(0, 0, 0, .06);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .08);--color-bg-page: #F8FAFC;--color-bg-surface: #FFFFFF;--color-bg-surface-hover: #F1F5F9;--color-bg-inset: #F1F5F9;--color-sidebar-bg: #0F172A;--color-border-default: #E2E5EC;--color-border-subtle: #EEF0F4;--color-border-input: #C7CCD6;--color-border-focus: #1A6FB5;--color-text-primary: #0F172A;--color-text-secondary: #64748B;--color-text-muted: #94A3B8;--color-text-inverse: #FFFFFF;--color-brand-primary: #1A6FB5;--color-brand-primary-hover: #145A94;--color-brand-light: #EFF6FF;--color-brand-accent: #0EA5E9;--color-sidebar-accent: #38BDF8;--color-status-high-bg: #FEF2F2;--color-status-high-text: #DC2626;--color-status-medium-bg: #FFFBEB;--color-status-medium-text: #D97706;--color-status-low-bg: #EFF6FF;--color-status-low-text: #2563EB;--color-status-resolved-bg: #F0FDF4;--color-status-resolved-text: #16A34A;--color-status-unassigned: #D97706;--color-status-inprogress: #1A6FB5;--color-status-closed: #16A34A;--color-alert-success: #16A34A;--color-alert-error: #DC2626;--color-alert-warning: #D97706;--color-alert-info: #2563EB;--color-priority-high: #DC2626;--color-priority-medium: #D97706;--color-priority-low: #2563EB;--color-role-admin: #8B5CF6;--color-role-admin-bg: rgba(139, 92, 246, .12);--color-role-technician: #F59E0B;--color-role-technician-bg: rgba(245, 158, 11, .12);--color-role-super-user: #4878A8;--color-role-super-user-bg: rgba(72, 120, 168, .12);--color-presence-online: #22C55E;--color-presence-offline: #94A3B8}.dark{--bg-page: #13171F;--bg-surface: #242B3D;--bg-surface-hover: #2E374C;--bg-inset: #1C212E;--sidebar-bg: #10141C;--border-default: #2A3142;--border-subtle: #1F2532;--border-input: #3D4660;--border-focus: #5B9BD5;--text-primary: #E6EAF2;--text-secondary: #A8B0C0;--text-muted: #909AAC;--text-inverse: #0B0E14;--brand-primary: #5B9BD5;--brand-primary-hover: #7DB3E0;--brand-light: #23303F;--brand-accent: #5B9BD5;--sidebar-accent: #5B9BD5;--status-high-bg: #2A1414;--status-high-text: #F87171;--status-medium-bg: #2A2008;--status-medium-text: #F5B544;--status-low-bg: #11203D;--status-low-text: #6BA5FA;--status-resolved-bg: #0F2A1A;--status-resolved-text: #4ADE80;--status-unassigned: #F5B544;--status-inprogress: #5B9BD5;--status-closed: #4ADE80;--alert-success: #4ADE80;--alert-error: #F87171;--alert-warning: #F5B544;--alert-info: #6BA5FA;--priority-high: #F87171;--priority-medium: #F5B544;--priority-low: #6BA5FA;--role-admin: #A78BFA;--role-admin-bg: rgba(167, 139, 250, .16);--role-technician: #FBBF24;--role-technician-bg: rgba(251, 191, 36, .14);--role-super-user: #5B9BD5;--role-super-user-bg: rgba(91, 155, 213, .14);--presence-online: #4ADE80;--presence-offline: #A8B0C0;--bg-elevated: #1C212E;--status-available: #4ADE80;--status-completed: #4ADE80;--status-enroute: #5B9BD5;--status-onsite: #F5B544;--status-late: #F87171;--status-offline: #A8B0C0;--text-disabled: #5A6275;--text-on-brand: #FFFFFF;--job-cctv: #D26E6B;--job-cctv-gradient: linear-gradient(135deg, #C25450, #D26E6B);--job-cctv-text: #F5DEDD;--job-ecm: #5B89BB;--job-ecm-gradient: linear-gradient(135deg, #4A78AD, #5B89BB);--job-ecm-text: #E0ECF5;--job-flow: #BA7790;--job-flow-gradient: linear-gradient(135deg, #A8637E, #BA7790);--job-flow-text: #F2DDE6;--job-heatstress: #CB9D52;--job-heatstress-gradient: linear-gradient(135deg, #B8893A, #CB9D52);--job-heatstress-text: #F5ECD8;--job-slm: #5BAA80;--job-slm-gradient: linear-gradient(135deg, #4A9A6E, #5BAA80);--job-slm-text: #DCF0E4;--job-vibration: #5DA8B2;--job-vibration-gradient: linear-gradient(135deg, #4A96A0, #5DA8B2);--job-vibration-text: #DCF0F2;--job-vms: #9F82C2;--job-vms-gradient: linear-gradient(135deg, #8B6DB5, #9F82C2);--job-vms-text: #E8DFF2;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .35);--shadow-md: 0 6px 16px rgba(0, 0, 0, .45);--shadow-lg: 0 12px 32px rgba(0, 0, 0, .55);--color-bg-page: #13171F;--color-bg-surface: #242B3D;--color-bg-surface-hover: #2E374C;--color-bg-inset: #1C212E;--color-sidebar-bg: #10141C;--color-border-default: #2A3142;--color-border-subtle: #1F2532;--color-border-input: #3D4660;--color-border-focus: #5B9BD5;--color-text-primary: #E6EAF2;--color-text-secondary: #A8B0C0;--color-text-muted: #909AAC;--color-text-inverse: #0B0E14;--color-brand-primary: #5B9BD5;--color-brand-primary-hover: #7DB3E0;--color-brand-light: #23303F;--color-brand-accent: #5B9BD5;--color-sidebar-accent: #5B9BD5;--color-status-high-bg: #2A1414;--color-status-high-text: #F87171;--color-status-medium-bg: #2A2008;--color-status-medium-text: #F5B544;--color-status-low-bg: #11203D;--color-status-low-text: #6BA5FA;--color-status-resolved-bg: #0F2A1A;--color-status-resolved-text: #4ADE80;--color-status-unassigned: #F5B544;--color-status-inprogress: #5B9BD5;--color-status-closed: #4ADE80;--color-alert-success: #4ADE80;--color-alert-error: #F87171;--color-alert-warning: #F5B544;--color-alert-info: #6BA5FA;--color-priority-high: #F87171;--color-priority-medium: #F5B544;--color-priority-low: #6BA5FA;--color-role-admin: #A78BFA;--color-role-admin-bg: rgba(167, 139, 250, .16);--color-role-technician: #FBBF24;--color-role-technician-bg: rgba(251, 191, 36, .14);--color-role-super-user: #5B9BD5;--color-role-super-user-bg: rgba(91, 155, 213, .14);--color-presence-online: #4ADE80;--color-presence-offline: #A8B0C0}html,body{font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-page);color:var(--text-primary)}code{font-family:JetBrains Mono,SF Mono,Fira Code,monospace}*{scrollbar-width:thin;scrollbar-color:var(--border-default) transparent}*::-webkit-scrollbar{width:6px;height:6px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:3px}*::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}::selection{background:var(--brand-primary);color:var(--text-inverse)}:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}button,a,[role=button]{transition:all .15s ease}.typo-display{font-family:var(--font-sans);font-size:calc(28px * var(--font-scale, 1));font-weight:700;letter-spacing:-.02em;line-height:1.2}.typo-h1{font-size:1.5rem;font-weight:700;line-height:1.25}.typo-h2{font-size:1.25rem;font-weight:600;line-height:1.3}.typo-h3{font-size:1rem;font-weight:600;line-height:1.4}.typo-body{font-size:.875rem;font-weight:400;line-height:1.5}.typo-body-medium{font-size:.875rem;font-weight:500;line-height:1.5}.typo-label{font-size:.8125rem;font-weight:500;line-height:1.4}.typo-caption{font-size:.75rem;font-weight:400;line-height:1.4}.typo-caption-medium{font-size:.75rem;font-weight:500;line-height:1.4}.typo-code{font-size:.8125rem;font-weight:400;line-height:1.4;font-family:JetBrains Mono,SF Mono,Fira Code,monospace}.typo-button{font-size:.8125rem;font-weight:600;line-height:1}.grouped-section{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:16px;box-shadow:var(--shadow-sm);overflow:hidden}.grouped-section-header{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:12px;padding:0 4px}.grouped-row{display:flex;align-items:center;gap:12px;padding:12px 16px;min-height:44px;border-bottom:1px solid var(--border-subtle);transition:background .15s ease}.grouped-row:last-child{border-bottom:none}.grouped-row:hover{background:var(--bg-surface-hover)}.grouped-row-clickable{cursor:pointer}.segmented-control{display:inline-flex;background-color:var(--bg-inset);border-radius:var(--radius-md);padding:4px;gap:4px}.segmented-pill{padding:6px 16px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text-secondary);font-family:inherit;font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:background-color .15s ease,color .15s ease;white-space:nowrap}.segmented-pill:hover{background-color:var(--bg-surface-hover);color:var(--text-primary)}.segmented-pill-active{background-color:var(--bg-surface);color:var(--brand-primary);box-shadow:var(--shadow-sm)}.status-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:500;line-height:1.4;white-space:nowrap}.status-pill-high{background-color:color-mix(in srgb,var(--status-high-text) 12%,transparent);color:var(--status-high-text)}.status-pill-medium{background-color:color-mix(in srgb,var(--status-medium-text) 12%,transparent);color:var(--status-medium-text)}.status-pill-low{background-color:color-mix(in srgb,var(--alert-info) 12%,transparent);color:var(--alert-info)}.status-pill-resolved{background-color:color-mix(in srgb,var(--status-resolved-text) 12%,transparent);color:var(--status-resolved-text)}.status-pill-closed{background-color:color-mix(in srgb,var(--status-closed) 12%,transparent);color:var(--status-closed)}.status-pill-active,.status-pill-info{background-color:color-mix(in srgb,var(--brand-primary) 12%,transparent);color:var(--brand-primary)}.status-pill-warning{background-color:color-mix(in srgb,var(--alert-warning) 12%,transparent);color:var(--alert-warning)}.status-pill-suspended{background-color:color-mix(in srgb,var(--alert-error) 12%,transparent);color:var(--alert-error)}.status-pill-success{background-color:color-mix(in srgb,var(--alert-success) 12%,transparent);color:var(--alert-success)}.status-pill-danger{background-color:color-mix(in srgb,var(--alert-error) 12%,transparent);color:var(--alert-error)}.status-pill-default{background-color:var(--bg-inset);color:var(--text-secondary)}.field-stack{display:flex;flex-direction:column;gap:2px}.field-label{font-size:var(--text-sm);font-weight:500;color:var(--text-muted);line-height:1.4}.field-value{font-size:var(--text-base);font-weight:500;color:var(--text-primary);line-height:1.5}.metric-card{background-color:var(--bg-inset);border-radius:var(--radius-lg);padding:16px;display:flex;flex-direction:column;gap:8px}.metric-number{font-size:var(--text-xl);font-weight:700;line-height:1.25;color:var(--text-primary);font-family:JetBrains Mono,monospace}.metric-label{font-size:var(--text-xs);color:var(--text-muted);margin-top:4px}.detail-panel-padding{padding:16px}.detail-section-gap{display:flex;flex-direction:column;gap:24px}@media(min-width:769px){.detail-panel-padding{padding:24px}.dashboard-view-padding{padding:24px 28px}}.row-accent-high{border-left:3px solid var(--priority-high)!important;background:color-mix(in srgb,var(--priority-high) 5%,transparent)!important}.row-accent-medium{border-left:3px solid var(--priority-medium)!important;background:color-mix(in srgb,var(--priority-medium) 5%,transparent)!important}.row-accent-low{border-left:3px solid var(--priority-low)!important;background:color-mix(in srgb,var(--priority-low) 5%,transparent)!important}.row-accent-closed{border-left:3px solid var(--status-closed)!important;background:color-mix(in srgb,var(--status-closed) 5%,transparent)!important}@keyframes nodeLoaderPulse{0%,to{transform:scale(1)}50%{transform:scale(1.4)}}@keyframes nodeLoaderLine{0%{left:-100%}50%{left:0%}to{left:100%}}@keyframes statusPulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes reportsSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-fade-in-up{animation:fadeInUp .3s ease-out both}.animate-fade-in{animation:fadeIn .2s ease-out both}@media(max-width:767px){.filter-dialog-content{inset:auto 0 0!important;transform:none!important;translate:0 0!important;max-width:100%!important;width:100%!important;border-radius:16px 16px 0 0!important;max-height:85vh;overflow-y:auto}}@media(max-width:768px){.mobile-stack{flex-direction:column!important}.mobile-full-width{width:100%!important}.mobile-padding-sm{padding:12px!important}.mobile-hide{display:none!important}.mobile-text-sm{font-size:.75rem!important}.detail-panel-padding{padding:16px}.detail-section-gap{gap:16px}.grouped-row{padding:12px}.segmented-pill{padding:6px 12px;font-size:.75rem}.dashboard-view-padding{padding:16px!important}.kpi-card{padding:14px 16px!important}.actionable-list-card{padding:12px!important}.actionable-list-row{flex-wrap:wrap;gap:6px!important}.actionable-list-row .typo-label{white-space:normal!important;word-break:break-word}}*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal}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-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-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[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}textarea{resize:vertical}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]{display:none}img,video{height:revert-layer}*,: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-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: }::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-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: }.container{width:100%}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1536px){.container{max-width:1536px}}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.top-0{top:0}.top-\[2\.4rem\]{top:2.4rem}.top-\[2\.75rem\]{top:2.75rem}.top-\[4\.3rem\]{top:4.3rem}.z-10{z-index:10}.z-\[8\]{z-index:8}.z-\[9\]{z-index:9}.m-0{margin:0}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.ml-2{margin-left:.5rem}.mr-1{margin-right:.25rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-auto{margin-top:auto}.block{display:block}.inline{display:inline}.flex{display:flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-2{height:.5rem}.h-8{height:2rem}.h-\[130px\]{height:130px}.h-\[40vh\]{height:40vh}.h-full{height:100%}.max-h-\[68vh\]{max-height:68vh}.min-h-\[116px\]{min-height:116px}.min-h-\[145px\]{min-height:145px}.min-h-\[180px\]{min-height:180px}.min-h-\[260px\]{min-height:260px}.w-1\/2{width:50%}.w-8{width:2rem}.w-\[50\%\]{width:50%}.w-full{width:100%}.w-max{width:max-content}.w-min{width:min-content}.min-w-0{min-width:0px}.min-w-\[100px\]{min-width:100px}.min-w-full{min-width:100%}.max-w-max{max-width:max-content}.flex-1{flex:1 1 0%}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.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))}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.grid-flow-col{grid-auto-flow:column}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.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))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-slate-100>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(241 245 249 / var(--tw-divide-opacity))}.self-center{align-self:center}.justify-self-center{justify-self:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-pre{white-space:pre}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l-0{border-left-width:0px}.border-r-2{border-right-width:2px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-blue-100{--tw-border-opacity: 1;border-color:rgb(219 234 254 / var(--tw-border-opacity))}.border-blue-400{--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity))}.border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity))}.border-emerald-200{--tw-border-opacity: 1;border-color:rgb(167 243 208 / var(--tw-border-opacity))}.border-emerald-300{--tw-border-opacity: 1;border-color:rgb(110 231 183 / var(--tw-border-opacity))}.border-red-300{--tw-border-opacity: 1;border-color:rgb(252 165 165 / var(--tw-border-opacity))}.border-slate-100{--tw-border-opacity: 1;border-color:rgb(241 245 249 / var(--tw-border-opacity))}.border-slate-200{--tw-border-opacity: 1;border-color:rgb(226 232 240 / var(--tw-border-opacity))}.border-slate-300{--tw-border-opacity: 1;border-color:rgb(203 213 225 / var(--tw-border-opacity))}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.bg-blue-300{--tw-bg-opacity: 1;background-color:rgb(147 197 253 / var(--tw-bg-opacity))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity))}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity))}.bg-cyan-50{--tw-bg-opacity: 1;background-color:rgb(236 254 255 / var(--tw-bg-opacity))}.bg-emerald-50{--tw-bg-opacity: 1;background-color:rgb(236 253 245 / var(--tw-bg-opacity))}.bg-orange-50{--tw-bg-opacity: 1;background-color:rgb(255 247 237 / var(--tw-bg-opacity))}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity))}.bg-sky-500{--tw-bg-opacity: 1;background-color:rgb(14 165 233 / var(--tw-bg-opacity))}.bg-slate-100{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity))}.bg-slate-200{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity))}.bg-slate-50{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.object-contain{object-fit:contain}.p-1{padding:.25rem}.p-10{padding:2.5rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-2{padding-left:.5rem;padding-right:.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-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-\[\.1rem\]{padding-top:.1rem;padding-bottom:.1rem}.\!pl-2{padding-left:.5rem!important}.pb-2{padding-bottom:.5rem}.pb-4{padding-bottom:1rem}.pl-2{padding-left:.5rem}.pl-5{padding-left:1.25rem}.pr-4{padding-right:1rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.\!text-xs{font-size:.75rem!important;line-height:1rem!important}.text-\[10px\]{font-size:calc(10px * var(--font-scale, 1))}.text-\[11px\]{font-size:calc(11px * var(--font-scale, 1))}.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-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.\!text-white{--tw-text-opacity: 1 !important;color:rgb(255 255 255 / var(--tw-text-opacity))!important}.text-amber-700{--tw-text-opacity: 1;color:rgb(180 83 9 / var(--tw-text-opacity))}.text-blue-300{--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity))}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity))}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity))}.text-blue-900{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity))}.text-orange-700{--tw-text-opacity: 1;color:rgb(194 65 12 / var(--tw-text-opacity))}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity))}.text-slate-600{--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity))}.text-slate-700{--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity))}.text-slate-800{--tw-text-opacity: 1;color:rgb(30 41 59 / var(--tw-text-opacity))}.text-slate-900{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.underline{text-decoration-line:underline}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring-1{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-emerald-200{--tw-ring-opacity: 1;--tw-ring-color: rgb(167 243 208 / var(--tw-ring-opacity))}.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,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.dark .bg-white{background-color:var(--bg-surface)}.dark .bg-slate-50,.dark .bg-gray-50,.dark .bg-slate-100,.dark .bg-slate-200{background-color:var(--bg-inset)}.dark .hover\:bg-slate-100:hover,.dark .hover\:bg-slate-200:hover{background-color:var(--bg-surface-hover)}.dark .bg-blue-50{background-color:var(--brand-light)}.dark .text-slate-900,.dark .text-slate-800,.dark .text-slate-700,.dark .text-gray-700{color:var(--text-primary)}.dark .text-slate-600,.dark .text-gray-600{color:var(--text-secondary)}.dark .text-slate-500,.dark .text-slate-400,.dark .text-gray-500{color:var(--text-muted)}.dark .text-blue-700,.dark .text-blue-600,.dark .text-blue-500{color:var(--brand-primary)}.dark .border-slate-100,.dark .border-slate-200{border-color:var(--border-subtle)}.dark .border-slate-300,.dark .hover\:border-slate-300:hover{border-color:var(--border-input)}:root{--brand-primary: #075ff0;--brand-primary-hover: #0550c8;--brand-light: #eaf1ff;--border-focus: #075ff0}.dark{--brand-primary: #5b96ff;--brand-primary-hover: #7dabff;--brand-light: #1d2a44;--border-focus: #5b96ff}:root{--page-wash: linear-gradient(160deg, #eef3fe 0%, #f8fafd 45%, #f3f6fc 100%);--side-bg: rgba(255, 255, 255, .72);--surface-shadow: 0 1px 2px rgba(16, 24, 40, .05), 0 10px 28px rgba(16, 24, 40, .07);--surface-shadow-lift: 0 2px 4px rgba(16, 24, 40, .06), 0 16px 40px rgba(7, 95, 240, .1);--brand-gradient: linear-gradient(135deg, #075ff0, #3b82f6);--brand-glow: 0 6px 16px rgba(7, 95, 240, .32);--dialog-shadow: 0 24px 64px rgba(16, 24, 40, .18)}.dark{--page-wash: linear-gradient(160deg, #131a2b 0%, #10151f 50%, #141a28 100%);--side-bg: rgba(24, 30, 44, .82);--surface-shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 12px 30px rgba(0, 0, 0, .35);--surface-shadow-lift: 0 2px 4px rgba(0, 0, 0, .3), 0 16px 44px rgba(59, 130, 246, .16);--brand-gradient: linear-gradient(135deg, #5b96ff, #7cabff);--brand-glow: 0 6px 16px rgba(91, 150, 255, .28);--dialog-shadow: 0 24px 64px rgba(0, 0, 0, .45)}body{margin:0;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;background:var(--bg-page);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:JetBrains Mono,source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.hover\:border-slate-300:hover{--tw-border-opacity: 1;border-color:rgb(203 213 225 / var(--tw-border-opacity))}.hover\:bg-gray-500\/20:hover{background-color:#6b728033}.hover\:bg-slate-200:hover{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity))}.dark .hover\:bg-slate-200:hover{background-color:var(--bg-inset)}.dark .hover\:border-slate-300:hover{border-color:var(--border-input)}@media(min-width:640px){.sm\:w-1\/2{width:50%}.sm\:w-\[10rem\]{width:10rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}}@media(min-width:768px){.md\:grid{display:grid}.md\:grid-flow-row{grid-auto-flow:row}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:gap-2{gap:.5rem}.md\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.md\:text-base{font-size:1rem;line-height:1.5rem}}@media(min-width:1024px){.lg\:col-span-2{grid-column:span 2 / span 2}.lg\:col-span-3{grid-column:span 3 / span 3}.lg\:m-auto{margin:auto}.lg\:h-10{height:2.5rem}.lg\:w-10{width:2.5rem}.lg\:w-60{width:15rem}.lg\:w-80{width:20rem}.lg\:w-\[10rem\]{width:10rem}.lg\:w-full{width:100%}.lg\:w-max{width:max-content}.lg\:flex-1{flex:1 1 0%}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:justify-between{justify-content:space-between}.lg\:py-\[\.25rem\]{padding-top:.25rem;padding-bottom:.25rem}}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media(prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin infinite 20s linear}}.App-header{background-color:#282c34;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:calc(10px + 2vmin);color:#fff}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.readingtable-container{overflow-y:auto}@media(min-width:1024px){.readingtable-container{max-height:max-content;width:max-content}}.readingtable-container .readingtable-list{display:flex;flex-direction:column;padding-top:.5rem;padding-bottom:.5rem;font-size:.75rem;line-height:1rem}@media(min-width:768px){.readingtable-container .readingtable-list{width:max-content}}.readingtable-container .readingtable-list{gap:28px}.readingtable-container .readingtable-list .readingtable{display:flex;flex-direction:column;overflow:auto;max-height:68vh;border-radius:12px;background:var(--bg-surface);box-shadow:var(--surface-shadow)}.readingtable-container .readingtable-list .readingtable .header-wrapper,.readingtable-container .readingtable-list .readingtable .reading-wrapper,.readingtable-container .readingtable-list .readingtable .table-wrapper,.readingtable-container .readingtable-list .readingtable .data-wrapper{display:flex;width:max-content;flex-direction:row}.readingtable-container .readingtable-list .readingtable .header-wrapper{position:sticky;top:0;z-index:3}.readingtable-container .readingtable-list .readingtable .header-wrapper .header,.readingtable-container .readingtable-list .readingtable .header-wrapper .hours-label{height:34px;border:0;background:var(--bg-inset);color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1));font-weight:700}.readingtable-container .readingtable-list .readingtable .average-data,.readingtable-container .readingtable-list .readingtable .readings-data,.readingtable-container .readingtable-list .readingtable .readings-data-over-limit,.readingtable-container .readingtable-list .readingtable .readings-data-warning,.readingtable-container .readingtable-list .readingtable .header{display:flex;width:4rem;align-items:center;justify-content:center;text-align:center;height:30px;border:0;border-bottom:1px solid var(--border-subtle);font-variant-numeric:tabular-nums}.readingtable-container .readingtable-list .readingtable .readings-data,.readingtable-container .readingtable-list .readingtable .readings-data-over-limit,.readingtable-container .readingtable-list .readingtable .readings-data-warning,.readingtable-container .readingtable-list .readingtable .average-data{font-size:calc(12px * var(--font-scale, 1));color:var(--text-primary)}.readingtable-container .readingtable-list .readingtable .average-data{background:var(--bg-inset);font-weight:700}.readingtable-container .readingtable-list .readingtable .readings-data-over-limit{background:var(--status-high-bg);color:var(--status-high-text);font-weight:700}.readingtable-container .readingtable-list .readingtable .readings-data-warning{background:var(--status-medium-bg);color:var(--status-medium-text);font-weight:700}.readingtable-container .readingtable-list .readingtable .hours-label{width:8rem;padding-right:.5rem;text-align:right}@media(min-width:1024px){.readingtable-container .readingtable-list .readingtable .hours-label{width:9rem}}.readingtable-container .readingtable-list .readingtable .hours-label{position:sticky;left:0;z-index:2;display:flex;align-items:center;justify-content:flex-end;height:30px;border:0;border-right:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-secondary);font-size:calc(11.5px * var(--font-scale, 1));font-weight:600}.readingtable-container .readingtable-list .readingtable .data-wrapper>div:first-child .hours-label:nth-child(2n){background:var(--bg-inset)}.readingtable-container .readingtable-list .readingtable .reading-wrapper:nth-child(2n){background:var(--bg-inset)}.readingtable-container .readingtable-list .readingtable .reading-wrapper:hover{background:var(--bg-surface-hover)}.readingtable-container .readingtable-list .readingtable .reading-wrapper-empty{height:30px;border-bottom:1px solid var(--border-subtle)}.readingtable-container .readingtable-list .readingtable .readings-calculation{display:flex;align-items:center}.readings-menubar{background:var(--bg-page)}.ovh-page{max-width:1180px;padding:24px 28px 30px;text-align:left;color:var(--text-primary)}.ovh-head h1{margin:0;font-size:calc(21px * var(--font-scale, 1));font-weight:800;letter-spacing:-.01em;color:var(--text-primary)}.ovh-meta{margin:3px 0 0;color:var(--text-muted);font-size:calc(12.5px * var(--font-scale, 1))}.ovh-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;margin-top:20px}.ovh-card{display:flex;align-items:center;gap:14px;padding:17px 18px;background:var(--bg-surface);border-radius:16px;box-shadow:var(--surface-shadow);color:inherit;text-decoration:none;transition:box-shadow .2s,transform .2s}.ovh-card:hover{box-shadow:var(--surface-shadow-lift);transform:translateY(-2px)}.ovh-card:hover .ovh-card-arrow{color:var(--brand-primary);transform:translate(2px)}.ovh-icon{display:grid;flex-shrink:0;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--brand-light);color:var(--brand-primary)}.ovh-icon svg{width:22px;height:22px}.ovh-card-body{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}.ovh-card-name{font-size:calc(14.5px * var(--font-scale, 1));font-weight:700}.ovh-card-desc{color:var(--text-muted);font-size:calc(12px * var(--font-scale, 1))}.ovh-card-stats{display:flex;align-items:center;gap:8px;margin-top:4px;color:var(--text-secondary);font-size:calc(11.5px * var(--font-scale, 1));font-weight:600}.ovh-stat-alert{padding:1px 8px;border-radius:20px;background:color-mix(in srgb,var(--alert-error) 12%,transparent);color:var(--alert-error);font-weight:700}.ovh-card-arrow{width:17px;height:17px;color:var(--text-muted);transition:transform .15s,color .15s}.ovh-empty{grid-column:1/-1;padding:26px;border-radius:16px;background:var(--bg-surface);box-shadow:var(--surface-shadow);color:var(--text-secondary);font-size:calc(13px * var(--font-scale, 1));text-align:center}@media(max-width:767px){.ovh-page{padding:18px 14px 24px}}.set-page{max-width:860px;padding:24px 28px 30px;text-align:left;color:var(--text-primary)}.set-section{display:flex;flex-direction:column;gap:10px;margin-top:16px;padding:17px 18px;border-radius:16px;background:var(--bg-surface);box-shadow:var(--surface-shadow)}.set-eyebrow{color:var(--text-muted);font-size:calc(11px * var(--font-scale, 1));font-weight:700;letter-spacing:.08em;text-transform:uppercase}.set-hint{margin:-4px 0 0;color:var(--text-secondary);font-size:calc(12.5px * var(--font-scale, 1))}.set-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.set-feedback{font-size:calc(12.5px * var(--font-scale, 1));font-weight:600}.set-feedback.ok{color:var(--alert-success)}.set-feedback.err{color:var(--alert-error)}.set-theme-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:480px}.set-theme-option{display:flex;flex-direction:column;align-items:center;gap:7px;padding:14px 10px;border:0;border-radius:12px;background:var(--bg-inset);color:var(--text-secondary);font-family:inherit;font-size:calc(12.5px * var(--font-scale, 1));font-weight:700;cursor:pointer;transition:box-shadow .15s,color .15s,background .15s}.set-theme-option svg{width:22px;height:22px}.set-theme-option:hover{color:var(--text-primary)}.set-theme-option.active{background:var(--bg-surface);color:var(--brand-primary);box-shadow:var(--surface-shadow),0 0 0 1.5px var(--brand-primary)}.set-subhead{margin-top:6px;color:var(--text-secondary);font-size:calc(12.5px * var(--font-scale, 1));font-weight:700}.set-fontsize-row{gap:12px}.set-step-btn{display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:10px;background:var(--bg-inset);color:var(--text-secondary);cursor:pointer;transition:color .15s,background .15s}.set-step-btn:hover:not(:disabled){color:var(--text-primary)}.set-step-btn:disabled{opacity:.4;cursor:default}.set-fontsize-value{min-width:48px;font-size:calc(14px * var(--font-scale, 1));font-variant-numeric:tabular-nums;font-weight:700;text-align:center}.set-site-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.set-products{grid-column:1/-1}.set-label{display:block;color:var(--text-muted);font-size:calc(11.5px * var(--font-scale, 1));font-weight:600}.set-value{display:block;margin-top:2px;font-size:calc(13.5px * var(--font-scale, 1));font-weight:600}.set-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:5px}.set-chip{padding:3px 11px;border-radius:20px;background:var(--brand-light);color:var(--brand-primary);font-size:calc(12px * var(--font-scale, 1));font-weight:700}@media(max-width:767px){.set-page{padding:18px 14px 24px}.set-site-grid{grid-template-columns:1fr}}.react-grid-layout{position:relative;transition:height .2s ease}.react-grid-item{transition:all .2s ease;transition-property:left,top,width,height}.react-grid-item img{pointer-events:none;-webkit-user-select:none;user-select:none}.react-grid-item.cssTransforms{transition-property:transform,width,height}.react-grid-item.resizing{transition:none;z-index:1;will-change:width,height}.react-grid-item.react-draggable-dragging{transition:none;z-index:3;will-change:transform}.react-grid-item.dropping{visibility:hidden}.react-grid-item.react-grid-placeholder{background:red;opacity:.2;transition-duration:.1s;z-index:2;-webkit-user-select:none;user-select:none}.react-grid-item.react-grid-placeholder.placeholder-resizing{transition:none}.react-grid-item>.react-resizable-handle{position:absolute;width:20px;height:20px;opacity:0}.react-grid-item:hover>.react-resizable-handle{opacity:1}.react-grid-item>.react-resizable-handle:after{content:"";position:absolute;right:3px;bottom:3px;width:5px;height:5px;border-right:2px solid rgba(0,0,0,.4);border-bottom:2px solid rgba(0,0,0,.4)}.react-resizable-hide>.react-resizable-handle{display:none}.react-grid-item>.react-resizable-handle.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-w,.react-grid-item>.react-resizable-handle.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-n,.react-grid-item>.react-resizable-handle.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}.react-resizable{position:relative}.react-resizable-handle{position:absolute;width:20px;height:20px;background-repeat:no-repeat;background-origin:content-box;box-sizing:border-box;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2IDYiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYwMCIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI2cHgiIGhlaWdodD0iNnB4Ij48ZyBvcGFjaXR5PSIwLjMwMiI+PHBhdGggZD0iTSA2IDYgTCAwIDYgTCAwIDQuMiBMIDQgNC4yIEwgNC4yIDQuMiBMIDQuMiAwIEwgNiAwIEwgNiA2IEwgNiA2IFoiIGZpbGw9IiMwMDAwMDAiLz48L2c+PC9zdmc+);background-position:bottom right;padding:0 3px 3px 0}.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-resizable-handle-w,.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-resizable-handle-n,.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}.react-grid-item.react-grid-placeholder{background:var(--brand-primary, var(--text-muted))!important;opacity:.15}.react-grid-item>.react-resizable-handle{width:22px;height:22px}.react-grid-item>.react-resizable-handle:after{border-right-color:var(--text-muted);border-bottom-color:var(--text-muted)}.react-grid-item>.react-resizable-handle.react-resizable-handle-n,.react-grid-item>.react-resizable-handle.react-resizable-handle-s{width:40px;height:14px}.react-grid-item>.react-resizable-handle.react-resizable-handle-e,.react-grid-item>.react-resizable-handle.react-resizable-handle-w{width:14px;height:40px}.react-grid-item>.react-resizable-handle.react-resizable-handle-n:after,.react-grid-item>.react-resizable-handle.react-resizable-handle-s:after,.react-grid-item>.react-resizable-handle.react-resizable-handle-e:after,.react-grid-item>.react-resizable-handle.react-resizable-handle-w:after{display:none}.tile-soft{box-shadow:var(--surface-shadow, 0 1px 2px rgba(16, 24, 40, .05), 0 10px 28px rgba(16, 24, 40, .07));transition:box-shadow .15s ease}.tile-soft:hover{box-shadow:var(--surface-shadow-lift, 0 2px 4px rgba(16, 24, 40, .06), 0 16px 40px rgba(16, 24, 40, .1))}.tile-ghost{outline:1px dashed transparent;outline-offset:-1px;transition:outline-color .15s ease}.tile-ghost:hover{outline-color:var(--border-default, rgba(16, 24, 40, .2))}.react-grid-item:has(>.tile-soft)>.react-resizable-handle:after,.react-grid-item:has(>.tile-ghost)>.react-resizable-handle:after{opacity:0;transition:opacity .15s ease}.react-grid-item:has(>.tile-soft):hover>.react-resizable-handle:after,.react-grid-item:has(>.tile-soft).resizing>.react-resizable-handle:after,.react-grid-item:has(>.tile-ghost):hover>.react-resizable-handle:after,.react-grid-item:has(>.tile-ghost).resizing>.react-resizable-handle:after{opacity:1}@media(max-width:767px){.react-grid-item>.react-resizable-handle{display:none}.tile-drag-handle{cursor:default!important}.tile-grip-icon{display:none}}.vt-toolbar{display:flex;align-items:center;gap:8px}.vt-segment{display:flex;padding:3px;border-radius:8px;background:var(--bg-inset)}.vt-segment.vt-disabled{opacity:.45}.vt-segment-item{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:28px;padding:0 8px;border:0;border-radius:6px;background:transparent;color:var(--text-secondary);font-family:inherit;font-size:calc(12px * var(--font-scale, 1));font-weight:700;cursor:pointer}.vt-segment-item.active{background:var(--bg-surface);color:var(--brand-primary);box-shadow:0 1px 2px #0f172a1f}.vt-segment-item:disabled{cursor:default}.vt-more{color:var(--text-secondary)}.vp-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--card-min, 350px),1fr));gap:14px;align-items:stretch}.vp-card-grid[data-size=s]{gap:10px}.vp-card-grid[data-size=l]{gap:16px}.vp-list{border-radius:14px;background:var(--bg-surface);box-shadow:var(--surface-shadow);overflow:hidden}.vp-list-row{display:flex;align-items:center;gap:16px;min-height:44px;padding:11px 16px;border-top:1px solid var(--border-subtle);font-size:calc(13px * var(--font-scale, 1));color:var(--text-primary)}.vp-list-row>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vp-list-row>span.vp-cell-wrap{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;text-overflow:clip;white-space:normal}.vp-list-row.clickable{cursor:pointer}.vp-list-row.clickable:hover{background:var(--bg-surface-hover)}.vp-list-head{border-top:0;background:var(--bg-inset);color:var(--text-muted);font-size:calc(11px * var(--font-scale, 1));font-weight:700;letter-spacing:.08em;text-transform:uppercase}@media(max-width:767px){.vt-toolbar{display:none}.vp-card-grid{grid-template-columns:1fr!important}}.vp-row-alarm{color:var(--alert-error)}.detail-wrapper{height:fit-content}@media(min-width:1024px){.detail-wrapper{width:100%}}.detail-wrapper{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,max-content));gap:12px 28px;margin:2px 0 14px;padding:14px 18px;border-radius:14px;background:var(--bg-surface);box-shadow:var(--surface-shadow);color:var(--text-muted);text-align:left}.detail-wrapper .detail-row{display:flex;flex-direction:column;gap:1px;min-width:0}.detail-wrapper .detail-seperator{display:none}.detail-wrapper .detail-label-column{color:var(--text-muted);font-size:calc(11px * var(--font-scale, 1));font-weight:600}.detail-wrapper .detail-value-column{color:var(--text-primary);font-size:calc(13px * var(--font-scale, 1));font-weight:600;overflow-wrap:anywhere}.detail-wrapper .company-row .detail-value-column{color:var(--brand-primary);font-size:calc(13.5px * var(--font-scale, 1));font-weight:800}.detail-wrapper .detail-row .MuiFormControl-root{width:100%;min-width:0}.detail-wrapper .detail-row .MuiInputBase-root{background:var(--bg-inset);border-radius:10px;color:var(--text-primary);font-family:inherit;font-size:calc(13px * var(--font-scale, 1));font-weight:600}.detail-wrapper .detail-row .MuiOutlinedInput-notchedOutline{border:0}.detail-wrapper .detail-row .MuiSelect-select.MuiSelect-select{padding:5px 28px 5px 10px;font-size:calc(13px * var(--font-scale, 1));font-weight:600}.detail-wrapper .detail-row .MuiSelect-icon{color:var(--text-muted)}@media(max-width:767px){.detail-wrapper{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;padding:12px 14px}}.dashboard-wrapper{display:flex;flex-direction:column;position:relative}.dashboard-wrapper>: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))}.dashboard-wrapper{overflow:auto;padding:.5rem 1rem}@media(min-width:1024px){.dashboard-wrapper{margin:auto}}.dashboard-wrapper{top:64px;height:calc(100vh - 128px);height:calc(100dvh - 128px)}@media(max-width:760px){.dashboard-wrapper{top:60px;height:auto;min-height:calc(100vh - 60px);min-height:calc(100dvh - 60px);padding-right:14px;padding-bottom:18px;padding-left:14px;overflow:visible}}.slm-dashboard-wrapper{min-width:66%}@media(min-width:1024px){.slm-dashboard-wrapper{max-width:min-content}}.sdm-product-page{padding:24px 28px 30px}.sdm-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.sdm-page-head h1{margin:0;font-size:calc(21px * var(--font-scale, 1));font-weight:800;letter-spacing:-.01em;color:var(--text-primary);text-align:left}.sdm-page-meta{margin:3px 0 0;color:var(--text-muted);font-size:calc(12.5px * var(--font-scale, 1));text-align:left}.sdm-page-head-actions{display:flex;align-items:center;gap:12px}.sdm-page-updated{flex-shrink:0;color:var(--text-muted);font-size:calc(12px * var(--font-scale, 1));padding-top:6px}.tile-card{background:var(--bg-surface);border-radius:16px;box-shadow:var(--surface-shadow)}.sdm-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:16px;text-align:left}.sdm-kpi{display:flex;align-items:center;gap:13px;padding:15px 17px;background:var(--bg-surface);border-radius:16px;box-shadow:var(--surface-shadow)}.sdm-kpi-ico{display:grid;flex-shrink:0;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--brand-light);color:var(--brand-primary)}.sdm-kpi-ico svg{width:17px;height:17px}.sdm-kpi.ok .sdm-kpi-ico{background:var(--status-resolved-bg);color:var(--status-resolved-text)}.sdm-kpi.warn .sdm-kpi-ico{background:var(--status-high-bg);color:var(--status-high-text)}.sdm-kpi-label{display:block;color:var(--text-muted);font-size:calc(11.5px * var(--font-scale, 1));font-weight:600}.sdm-kpi-value{display:block;font-size:calc(19px * var(--font-scale, 1));font-weight:800;font-variant-numeric:tabular-nums;line-height:1.25;color:var(--text-primary)}.sdm-kpi-note{display:block;color:var(--text-muted);font-size:calc(11px * var(--font-scale, 1))}.sdm-kpi.warn .sdm-kpi-note{color:var(--status-high-text)}.sdm-product-page .MuiTabs-root,.sdm-product-page [class*=MuiTabList]{min-height:44px;padding:4px;border-radius:12px;background:var(--bg-inset);display:inline-flex;align-self:flex-start;width:fit-content;max-width:100%}.sdm-product-page .MuiTab-root{min-height:36px;padding:7px 18px;margin-right:4px;min-width:0;border-radius:9px;font-family:inherit;font-size:calc(13px * var(--font-scale, 1));font-weight:700;letter-spacing:0;color:var(--text-muted)}.sdm-product-page .MuiTab-root.Mui-selected{color:var(--brand-primary);background:var(--bg-surface);box-shadow:var(--surface-shadow)}.sdm-product-page .MuiTabs-indicator{display:none}.sdm-product-page .MuiTabPanel-root{padding:0}.sdm-product-page .bg-white{background:transparent}@media(max-width:767px){.sdm-product-page{padding:16px 14px 24px}.sdm-kpis{grid-template-columns:repeat(2,1fr);gap:10px}}.dashboard-wrapper.ecm-dashboard-wrapper{width:min(100%,1480px);min-width:0;max-width:none;gap:0}.ecm-site-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;min-height:46px;padding:6px 16px;border-radius:14px;background:var(--bg-surface);box-shadow:var(--surface-shadow)}.ecm-site-summary-item{min-width:0;padding:0 18px;border-right:1px solid var(--border-subtle)}.ecm-site-summary-item:first-child{padding-left:0}.ecm-site-summary-item:last-child{padding-right:0;border-right:0}.ecm-site-summary-label{display:block;margin-bottom:2px;color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1));line-height:1.2}.ecm-site-summary-value{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--text-primary);font-size:calc(12px * var(--font-scale, 1));font-weight:650;line-height:1.25;white-space:normal}.ecm-grid-container{width:100%}.sdm-kpis--in-tile{margin-top:0}.ecm-tile-devices{display:flex;flex-direction:column;height:100%;min-height:0;overflow:auto}.ecm-devices-list{flex:1;min-height:0;overflow:auto}.ecm-machine-grid{align-items:stretch}.ecm-machine-card{display:flex;min-width:0;overflow:hidden;flex-direction:column;border-radius:16px;background:var(--bg-surface);box-shadow:var(--surface-shadow);transition:box-shadow .2s,transform .2s}.ecm-machine-card:hover{box-shadow:var(--surface-shadow-lift);transform:translateY(-2px)}.ecm-machine-image{position:relative;width:100%;height:clamp(108px,10vw,132px);overflow:hidden;background:var(--bg-inset)}.ecm-machine-image img{width:100%;height:100%;object-fit:contain}.vp-card-grid[data-size=l] .ecm-machine-image{height:clamp(148px,14vw,192px)}.vp-card-grid[data-size=s] .ecm-machine-image{height:clamp(80px,7vw,96px)}.ecm-demo-badge{position:absolute;top:9px;left:9px;padding:3px 7px;border-radius:4px;background:#0f172ad1;color:#fff;font-size:calc(11px * var(--font-scale, 1));font-weight:700;text-transform:uppercase}.ecm-machine-body{display:flex;flex:1;flex-direction:column;gap:9px;padding:14px;text-align:left}.vp-card-grid[data-size=l] .ecm-machine-body{padding:16px;gap:12px}.vp-card-grid[data-size=s] .ecm-machine-body{padding:9px;gap:7px}.ecm-machine-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.ecm-machine-heading h3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-width:0;margin:0;overflow:hidden;color:var(--text-primary);font-size:calc(15px * var(--font-scale, 1));font-weight:700;white-space:normal}.vp-card-grid[data-size=l] .ecm-machine-heading h3{font-size:calc(17px * var(--font-scale, 1))}.vp-card-grid[data-size=s] .ecm-machine-heading h3{font-size:calc(13px * var(--font-scale, 1))}.ecm-status-badge{flex:0 0 auto;padding:3px 8px;border-radius:999px;background:#e8f6ec;color:#16803c;font-size:calc(11px * var(--font-scale, 1));font-weight:650}.ecm-status-group{display:flex;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end;gap:5px}.ecm-status-badge.missing{background:#fff4df;color:#9a5b00}.ecm-status-badge.alert{background:#feecec;color:#c62828}.ecm-status-badge.neutral{background:var(--bg-inset);color:var(--text-secondary)}.ecm-reading-label,.ecm-reading-time-label{display:block;color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1))}.ecm-threshold-value{display:block;margin-top:2px;color:#9a5b00;font-size:calc(11px * var(--font-scale, 1));font-weight:650}.ecm-reading-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;min-height:48px;padding:8px 10px;border:1px solid var(--border-subtle);border-radius:5px;background:var(--bg-inset)}.ecm-reading-value{display:block;margin-top:1px;color:var(--brand-primary);font-size:calc(19px * var(--font-scale, 1));font-weight:750}.vp-card-grid[data-size=l] .ecm-reading-value{font-size:calc(24px * var(--font-scale, 1))}.vp-card-grid[data-size=s] .ecm-reading-value{font-size:calc(15px * var(--font-scale, 1))}.ecm-reading-value.alert{color:#c62828}.ecm-reading-time{display:block;margin-top:1px;color:var(--text-primary);font-size:calc(12px * var(--font-scale, 1));font-weight:600}.ecm-reading-updated{min-width:105px;text-align:right}.ecm-machine-meta{display:flex;min-width:0;align-items:center;gap:5px;color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1))}.ecm-machine-meta span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:normal}.ecm-mini-chart{height:82px;min-height:82px;padding-top:5px;border-top:1px solid var(--bg-inset)}.vp-card-grid[data-size=l] .ecm-mini-chart{height:100px;min-height:100px}.vp-card-grid[data-size=s] .ecm-mini-chart{height:62px;min-height:62px}.ecm-mini-chart-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2px}.ecm-mini-chart-title{display:block;color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1));font-weight:650}.ecm-mini-chart-unit{color:var(--text-muted);font-size:calc(11px * var(--font-scale, 1))}.ecm-mini-chart-canvas{height:54px}.vp-card-grid[data-size=l] .ecm-mini-chart-canvas{height:72px}.vp-card-grid[data-size=s] .ecm-mini-chart-canvas{height:38px}.ecm-mini-chart-empty{display:grid;height:54px;place-items:center;color:var(--text-muted);font-size:calc(11px * var(--font-scale, 1))}.ecm-machine-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:auto}.ecm-machine-action{display:inline-flex;min-width:0;min-height:36px;align-items:center;justify-content:center;gap:5px;padding:5px 7px;border:1px solid var(--brand-light);border-radius:5px;background:var(--bg-surface);color:var(--brand-primary);font-size:calc(11px * var(--font-scale, 1));font-weight:650}.ecm-machine-action:hover:not(:disabled){background:var(--brand-light)}.ecm-machine-action:disabled{border-color:var(--border-default);color:var(--text-muted);cursor:not-allowed}.ecm-machine-empty{grid-column:1/-1;padding:50px 20px;border-radius:14px;background:var(--bg-surface);box-shadow:var(--surface-shadow);color:var(--text-secondary);text-align:center}@media(max-width:760px){.ecm-site-summary,.ecm-machine-grid{grid-template-columns:1fr}.ecm-site-summary{gap:10px}.ecm-site-summary-item,.ecm-site-summary-item:first-child,.ecm-site-summary-item:last-child{padding:0 0 10px;border-right:0;border-bottom:1px solid var(--border-subtle)}.ecm-site-summary-item:last-child{padding-bottom:0;border-bottom:0}.ecm-reading-summary{grid-template-columns:1fr}.ecm-reading-updated{text-align:left}.ecm-machine-image{height:150px}.ecm-machine-action{font-size:calc(12px * var(--font-scale, 1));min-height:44px}}.dashboard-wrapper.slm-dashboard-wrapper{width:min(100%,1320px);min-width:0;max-width:none;gap:0}.slm2-devices{margin-top:14px;text-align:left}.slm2-devices-list{margin-top:14px}.slm2-device{transition:box-shadow .2s,transform .2s;padding:16px 17px;background:var(--bg-surface);border-radius:16px;box-shadow:var(--surface-shadow)}.slm2-device:hover{box-shadow:var(--surface-shadow-lift);transform:translateY(-2px)}.slm2-device.alarm{box-shadow:var(--surface-shadow),0 0 0 1.5px color-mix(in srgb,var(--alert-error) 55%,transparent)}.slm2-device-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.slm2-device-head h3{margin:0;font-size:calc(14.5px * var(--font-scale, 1));font-weight:700;color:var(--text-primary)}.slm2-device-id{color:var(--text-muted);font-size:calc(11px * var(--font-scale, 1));font-variant-numeric:tabular-nums}.slm2-badges{display:flex;flex-wrap:wrap;gap:5px;justify-content:flex-end}.slm2-badge{padding:3px 8px;border-radius:20px;font-size:calc(11px * var(--font-scale, 1));font-weight:700;letter-spacing:.04em;text-transform:uppercase}.slm2-badge.demo{background:var(--brand-light);color:var(--brand-primary)}.slm2-badge.alarm{background:var(--status-high-bg);color:var(--status-high-text)}.slm2-badge.missing{background:var(--status-medium-bg);color:var(--status-medium-text)}.slm2-reading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:13px 0 11px;padding:12px 14px;border-radius:12px;background:var(--bg-inset)}.slm2-value{font-size:calc(30px * var(--font-scale, 1));font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1;color:var(--text-primary)}.slm2-value small{margin-left:3px;color:var(--text-muted);font-size:calc(13px * var(--font-scale, 1));font-weight:600}.slm2-device.alarm .slm2-value{color:var(--alert-error)}.slm2-spark{width:120px;height:34px;flex-shrink:0}.slm2-spark-empty{color:var(--text-muted);font-size:calc(11px * var(--font-scale, 1))}.slm2-rule{color:var(--text-muted);font-size:calc(11.5px * var(--font-scale, 1))}.slm2-device.alarm .slm2-rule{color:var(--alert-error)}.slm2-view{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:6px 13px;border:0;border-radius:9px;background:var(--brand-light);color:var(--brand-primary);font-family:inherit;font-size:calc(12px * var(--font-scale, 1));font-weight:700;cursor:pointer}.slm2-view:hover{color:var(--brand-primary-hover)}.slm2-empty{grid-column:1/-1;padding:26px;border-radius:16px;background:var(--bg-surface);box-shadow:var(--surface-shadow);color:var(--text-secondary);font-size:calc(13px * var(--font-scale, 1));text-align:center}.vp-card-grid[data-size=s] .slm2-value{font-size:calc(24px * var(--font-scale, 1))}.vp-card-grid[data-size=s] .slm2-device{padding:13px 14px 12px}.vp-card-grid[data-size=l] .slm2-value{font-size:calc(38px * var(--font-scale, 1))}.vp-card-grid[data-size=l] .slm2-spark{width:160px;height:44px}.slm2-trend{margin-top:16px;padding:18px 20px 14px;background:var(--bg-surface);border-radius:16px;box-shadow:var(--surface-shadow);text-align:left}.slm2-trend-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:8px}.slm2-trend-head h2{margin:0;font-size:calc(15px * var(--font-scale, 1));font-weight:800;color:var(--text-primary)}.slm2-trend-head p{margin:2px 0 0;color:var(--text-muted);font-size:calc(11.5px * var(--font-scale, 1))}.slm2-trend-window{padding:4px 10px;border-radius:20px;background:var(--brand-light);color:var(--brand-primary);font-size:calc(11px * var(--font-scale, 1));font-weight:700}.slm2-trend-canvas{position:relative;height:300px}.slm2-chart-empty{display:grid;place-items:center;height:100%;color:var(--text-muted);font-size:calc(12.5px * var(--font-scale, 1))}@media(max-width:767px){.slm2-trend-canvas{height:240px}}.slm-grid-container{width:100%;min-height:0}.slm2-tile-devices{flex:1;min-height:0;overflow-y:auto;padding:8px 12px 12px}.slm2-trend-inner{display:flex;flex-direction:column;height:100%;padding:12px 16px 10px;overflow:hidden}.slm2-trend-canvas--fill{flex:1;min-height:0;height:auto!important;position:relative}.navbar{position:fixed;z-index:10;display:flex;height:7vh;width:100%;align-items:center}@media(min-width:1024px){.navbar{height:10vh;padding-left:5rem}}.navbar{background:var(--bg-page);color:var(--text-primary)}.navbar .title{display:flex;flex-grow:1;align-items:center;text-align:left}.navbar .title,.navbar .logout-button-wrapper,.navbar .switch-button-wrapper{display:flex;height:100%;align-items:center}.navbar .switch-button,.navbar .logout-button{min-width:5rem}.navbar .switch-button,.navbar .logout-button,.navbar .title{height:100%;padding:1rem}.navbar .navbar-actions{display:flex;align-items:center;gap:4px;height:100%;padding-right:8px}.theme-toggle{color:var(--text-secondary)}.unified-dashboard-navbar{display:grid;height:64px;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:0 22px;border-bottom:1px solid var(--border-default);background:var(--bg-surface);box-shadow:0 1px 5px #0f172a0a}.unified-dashboard-actions{display:inline-flex;align-items:center;gap:8px}.unified-dashboard-brand{display:inline-flex;align-items:center;gap:9px;color:var(--brand-primary);font-size:calc(20px * var(--font-scale, 1));font-weight:750;text-decoration:none;white-space:nowrap}.unified-dashboard-brand img{width:34px;height:34px;object-fit:contain}.unified-dashboard-context{display:flex;min-width:0;align-items:center;gap:10px}.unified-dashboard-navbar .dashboard-product-switcher{min-width:190px;height:38px;justify-content:space-between;border-color:var(--border-input);border-radius:6px;color:var(--text-primary);font-size:calc(13px * var(--font-scale, 1));font-weight:650;letter-spacing:0;text-transform:none}.dashboard-site-tag{display:inline-flex;min-width:74px;height:38px;align-items:center;justify-content:center;padding:0 13px;overflow:hidden;border:1px solid var(--border-default);border-radius:6px;background:var(--bg-inset);color:var(--text-primary);font-size:calc(13px * var(--font-scale, 1));font-weight:700;text-overflow:ellipsis;white-space:nowrap}.unified-dashboard-navbar .logout-button{min-width:auto;height:38px;padding:0 12px;border:1px solid var(--border-default);border-radius:6px;color:var(--text-primary);font-size:calc(13px * var(--font-scale, 1));font-weight:650;letter-spacing:0;text-transform:none}@media(max-width:760px){.navbar:not(.unified-dashboard-navbar){height:60px;min-height:60px;padding-left:8px}.unified-dashboard-navbar{height:60px;grid-template-columns:auto 1fr auto;gap:8px;padding:0 12px}.unified-dashboard-brand span,.unified-dashboard-navbar .logout-button{display:none}.unified-dashboard-context{justify-content:flex-start}.unified-dashboard-navbar .dashboard-product-switcher{width:min(100%,190px);min-width:0}.dashboard-site-tag{min-width:0;max-width:76px;height:34px;padding:0 8px;font-size:calc(11px * var(--font-scale, 1))}.unified-dashboard-navbar .logout-button-wrapper{display:inline-flex;width:38px;min-width:38px;padding:0;overflow:hidden;font-size:0}.unified-dashboard-navbar .logout-button-wrapper svg{margin:0}}@media(max-width:480px){.dashboard-site-tag{display:none}.unified-dashboard-navbar .dashboard-product-switcher{width:100%}}.app-shell{display:flex;min-height:100vh;min-height:100dvh;background:var(--page-wash);color:var(--text-primary)}.shell-sidebar{position:fixed;top:0;bottom:0;left:0;z-index:40;display:flex;flex-direction:column;width:228px;padding:20px 14px 16px;background:var(--side-bg);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.shell-brand{display:flex;align-items:center;gap:9px;font-size:calc(16px * var(--font-scale, 1));font-weight:800;color:var(--brand-primary)}.shell-brand-side{padding:0 10px 18px}.shell-logo{display:grid;place-items:center;width:30px;height:30px}.shell-logo img{width:30px;height:30px;object-fit:contain}.shell-nav{display:flex;flex-direction:column;gap:2px}.shell-nav-item{position:relative;display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:12px;color:var(--text-secondary);font-size:calc(13.5px * var(--font-scale, 1));font-weight:600;text-decoration:none;transition:background .15s,color .15s,box-shadow .15s}.shell-nav-item svg{width:18px;height:18px;flex-shrink:0}.shell-nav-item:hover{background:var(--bg-surface-hover);color:var(--text-primary)}.shell-nav-item.active{background:var(--brand-gradient);color:#fff;box-shadow:var(--brand-glow)}.shell-nav-settings{margin:0 -2px 2px}.shell-foot{display:flex;flex-direction:column;gap:10px;margin-top:auto;padding-top:16px}.shell-site-chip{display:flex;align-items:center;gap:8px;min-width:0;padding:9px 12px;border-radius:12px;background:var(--bg-surface);box-shadow:var(--surface-shadow);color:var(--text-secondary);font-size:calc(12px * var(--font-scale, 1));font-weight:600}.shell-site-dot{width:7px;height:7px;flex-shrink:0;border-radius:50%;background:var(--presence-online, #22c55e)}.shell-site-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shell-foot-row{display:flex;gap:8px}.shell-foot-row .theme-toggle{flex-shrink:0;border-radius:10px;background:var(--bg-surface);box-shadow:var(--surface-shadow)}.shell-logout{display:inline-flex;flex:1;align-items:center;justify-content:center;gap:7px;height:34px;border:0;border-radius:10px;background:var(--bg-surface);box-shadow:var(--surface-shadow);color:var(--text-secondary);font-family:inherit;font-size:calc(12.5px * var(--font-scale, 1));font-weight:700;cursor:pointer}.shell-logout:hover{background:var(--bg-surface-hover);color:var(--text-primary)}.shell-foot-links{display:flex;align-items:center;justify-content:center;gap:10px;padding-bottom:2px}.shell-foot-links button{display:inline-flex;align-items:center;gap:5px;border:0;background:none;color:var(--text-muted);font-family:inherit;font-size:calc(11px * var(--font-scale, 1));font-weight:600;cursor:pointer}.shell-foot-links button:hover{color:var(--brand-primary)}.shell-foot-sep{width:1px;height:10px;background:var(--border-default)}.shell-main{flex:1;min-width:0;margin-left:228px}.shell-main .dashboard-wrapper{top:0;height:auto;min-height:100dvh;overflow:visible}.shell-topbar,.shell-scrim{display:none}@media(max-width:767px){.shell-topbar{position:fixed;top:0;right:0;left:0;z-index:45;display:flex;align-items:center;gap:10px;height:54px;padding:0 12px;background:var(--side-bg);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:var(--surface-shadow)}.shell-topbar .shell-brand{flex:1;font-size:calc(15px * var(--font-scale, 1))}.shell-menu-button{display:grid;place-items:center;width:38px;height:38px;border:0;border-radius:8px;background:transparent;color:var(--text-secondary);cursor:pointer}.shell-sidebar{top:54px;transform:translate(-100%);transition:transform .2s ease;box-shadow:none}.shell-sidebar.open{transform:translate(0);box-shadow:0 12px 40px #0f172a40}.shell-sidebar .shell-brand-side{display:none}.shell-scrim{position:fixed;inset:54px 0 0;z-index:35;display:block;background:#0f172a73}.shell-main{margin-left:0;padding-top:54px}.shell-main .dashboard-wrapper{min-height:calc(100dvh - 54px)}}@media(min-width:768px){.shell-menu-button{display:none}}.privacy-policy-content{color:var(--text-secondary);font-size:calc(15px * var(--font-scale, 1));line-height:1.65}.privacy-policy-content section+section{margin-top:22px}.privacy-policy-content h2{margin:0 0 6px;color:var(--text-primary);font-size:calc(17px * var(--font-scale, 1));font-weight:800;letter-spacing:0}.privacy-policy-content p{margin:0}.privacy-policy-updated{margin-bottom:22px!important;color:var(--text-muted);font-size:calc(14px * var(--font-scale, 1))}.login-footer.dashboard-footer{position:fixed;right:0;bottom:0;left:0;z-index:12;height:64px;min-height:64px;background:var(--bg-surface);font-size:calc(13px * var(--font-scale, 1))}@media(max-width:760px){.login-footer.dashboard-footer{position:relative;height:auto;min-height:0;margin-top:60px;padding-bottom:max(14px,env(safe-area-inset-bottom));z-index:1}}.icon.font-color{background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='14'%20height='14'%20viewBox='0%200%20512%20512'%3e%3cpath%20fill='%23777'%20d='M221.631%20109%20109.92%20392h58.055l24.079-61h127.892l24.079%2061h58.055L290.369%20109Zm-8.261%20168L256%20169l42.63%20108Z'/%3e%3c/svg%3e")}.color-picker-wrapper{padding:20px}.color-picker-basic-color{display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:0}.color-picker-basic-color button{border:1px solid var(--border-input);border-radius:4px;height:16px;width:16px;cursor:pointer;list-style-type:none}.color-picker-basic-color button.active{box-shadow:0 0 2px 2px #0000004d}.color-picker-saturation{width:100%;position:relative;margin-top:15px;height:150px;background-image:linear-gradient(transparent,#000),linear-gradient(to right,white,transparent);-webkit-user-select:none;user-select:none}.color-picker-saturation_cursor{position:absolute;width:20px;height:20px;border:2px solid #ffffff;border-radius:50%;box-shadow:0 0 15px #00000026;box-sizing:border-box;transform:translate(-10px,-10px)}.color-picker-hue{width:100%;position:relative;margin-top:15px;height:12px;background-image:linear-gradient(to right,red,#ff0,#0f0,#0ff,#00f,#f0f,red);-webkit-user-select:none;user-select:none;border-radius:12px}.color-picker-hue_cursor{position:absolute;width:20px;height:20px;border:2px solid #ffffff;border-radius:50%;box-shadow:#0003 0 0 0 .5px;box-sizing:border-box;transform:translate(-10px,-4px)}.color-picker-color{border:1px solid var(--border-input);margin-top:15px;width:100%;height:20px}.Input__wrapper{display:flex;flex-direction:row;align-items:center;margin-bottom:10px}.Input__label{display:flex;flex:1;color:var(--text-secondary)}.Input__input{display:flex;flex:2;border:1px solid var(--border-input);background:var(--bg-surface);color:var(--text-primary);padding:7px 10px;font-size:calc(16px * var(--font-scale, 1));border-radius:5px;min-width:0}.other h2{font-size:calc(18px * var(--font-scale, 1));color:#444;margin-bottom:7px}.other a{color:#777;text-decoration:underline;font-size:calc(14px * var(--font-scale, 1))}.other ul{padding:0;margin:0;list-style-type:none}h1{font-size:calc(24px * var(--font-scale, 1));color:#333}.ltr{text-align:left}.rtl{text-align:right}.editor-container{border-radius:10px 10px 2px 2px;width:"100%";color:#f5a623;position:relative;line-height:20px;font-weight:400;text-align:left}.editor-inner{background:#000;position:relative}.editor-input{min-height:150px;resize:none;font-size:calc(15px * var(--font-scale, 1));caret-color:#050505;position:relative;tab-size:1;outline:0;padding:15px 10px;caret-color:#444}.editor-placeholder{color:#999;overflow:hidden;position:absolute;text-overflow:ellipsis;top:15px;left:10px;font-size:calc(15px * var(--font-scale, 1));-webkit-user-select:none;user-select:none;display:inline-block;pointer-events:none}.editor-text-bold{font-weight:700}.editor-text-italic{font-style:italic}.editor-text-underline{text-decoration:underline}.editor-text-strikethrough{text-decoration:line-through}.editor-text-underlineStrikethrough{text-decoration:underline line-through}.editor-text-code{background-color:#f0f2f5;padding:1px .25rem;font-family:Menlo,Consolas,Monaco,monospace;font-size:94%}.editor-link{color:#216fdb;text-decoration:none}.tree-view-output{display:block;background:#222;color:#fff;padding:5px;font-size:calc(12px * var(--font-scale, 1));white-space:pre-wrap;margin:1px auto 10px;max-height:250px;position:relative;border-bottom-left-radius:10px;border-bottom-right-radius:10px;overflow:auto;line-height:14px}.editor-code{background-color:#f0f2f5;font-family:Menlo,Consolas,Monaco,monospace;display:block;padding:8px 8px 8px 52px;line-height:1.53;font-size:calc(13px * var(--font-scale, 1));margin:8px 0;tab-size:2;overflow-x:auto;position:relative}.editor-code:before{content:attr(data-gutter);position:absolute;background-color:#eee;left:0;top:0;border-right:1px solid #ccc;padding:8px;color:#777;white-space:pre-wrap;text-align:right;min-width:25px}.editor-code:after{content:attr(data-highlight-language);top:0;right:3px;padding:3px;font-size:calc(11px * var(--font-scale, 1));text-transform:uppercase;position:absolute;color:#00000080}.editor-tokenComment{color:#708090}.editor-tokenPunctuation{color:#999}.editor-tokenProperty{color:#905}.editor-tokenSelector{color:#690}.editor-tokenOperator{color:#9a6e3a}.editor-tokenAttr{color:#07a}.editor-tokenVariable{color:#e90}.editor-tokenFunction{color:#dd4a68}.editor-paragraph{margin:0 0 8px;position:relative}.editor-paragraph:last-child{margin-bottom:0}.editor-heading-h1{font-size:calc(24px * var(--font-scale, 1));color:#050505;font-weight:400;margin:0 0 12px;padding:0}.editor-heading-h2{font-size:calc(15px * var(--font-scale, 1));color:#65676b;font-weight:700;margin:10px 0 0;padding:0;text-transform:uppercase}.editor-quote{margin:0 0 0 20px;font-size:calc(15px * var(--font-scale, 1));color:#65676b;border-left-color:#ced0d4;border-left-width:4px;border-left-style:solid;padding-left:16px}.editor-list-ol,.editor-list-ul{padding:0;margin:0 0 0 16px}.editor-listitem{margin:8px 32px}.editor-nested-listitem{list-style-type:none}pre::-webkit-scrollbar{background:transparent;width:10px}pre::-webkit-scrollbar-thumb{background:#999}.debug-timetravel-panel{overflow:hidden;padding:0 0 10px;margin:auto;display:flex}.debug-timetravel-panel-slider{padding:0;flex:8}.debug-timetravel-panel-button{padding:0;border:0;background:none;flex:1;color:#fff;font-size:calc(12px * var(--font-scale, 1))}.debug-timetravel-panel-button:hover{text-decoration:underline}.debug-timetravel-button{border:0;padding:0;font-size:calc(12px * var(--font-scale, 1));top:10px;right:15px;position:absolute;background:none;color:#fff}.debug-timetravel-button:hover{text-decoration:underline}.toolbar{display:flex;margin-bottom:1px;background:var(--bg-surface);padding:4px;border-top-left-radius:10px;border-top-right-radius:10px;vertical-align:middle}.toolbar button.toolbar-item{border:0;display:flex;background:none;border-radius:10px;padding:8px;cursor:pointer;vertical-align:middle}.toolbar button.toolbar-item:disabled{cursor:not-allowed}.toolbar button.toolbar-item.spaced{margin-right:2px}.toolbar button.toolbar-item i.format{background-size:contain;display:inline-block;height:18px;width:18px;margin-top:2px;vertical-align:-.25em;display:flex;opacity:.6}.toolbar button.toolbar-item:disabled i.format{opacity:.2}.toolbar button.toolbar-item.active{background-color:var(--brand-light)}.toolbar button.toolbar-item.active i{opacity:1}.toolbar .toolbar-item:hover:not([disabled]){background-color:var(--bg-surface-hover)}.toolbar .divider{width:1px;background-color:var(--border-default);margin:0 4px}.toolbar select.toolbar-item{border:0;display:flex;background:none;border-radius:10px;padding:8px;vertical-align:middle;-webkit-appearance:none;-moz-appearance:none;width:70px;font-size:calc(14px * var(--font-scale, 1));color:var(--text-secondary);text-overflow:ellipsis}.toolbar select.code-language{text-transform:capitalize;width:130px}.toolbar .toolbar-item .text{display:flex;line-height:20px;vertical-align:middle;font-size:calc(14px * var(--font-scale, 1));color:var(--text-secondary);text-overflow:ellipsis;width:70px;overflow:hidden;height:20px;text-align:left}.toolbar .toolbar-item .icon{display:flex;width:20px;height:20px;-webkit-user-select:none;user-select:none;margin-right:8px;line-height:16px;background-size:contain}.toolbar i.chevron-down{margin-top:3px;width:16px;height:16px;display:flex;-webkit-user-select:none;user-select:none}.toolbar i.chevron-down.inside{width:16px;height:16px;display:flex;margin-left:-25px;margin-top:11px;margin-right:10px;pointer-events:none}i.chevron-down{background-color:transparent;background-size:contain;display:inline-block;height:8px;width:8px;background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='16'%20height='16'%20fill='currentColor'%20class='bi%20bi-chevron-down'%3e%3cpath%20fill-rule='evenodd'%20d='M1.646%204.646a.5.5%200%200%201%20.708%200L8%2010.293l5.646-5.647a.5.5%200%200%201%20.708.708l-6%206a.5.5%200%200%201-.708%200l-6-6a.5.5%200%200%201%200-.708z'/%3e%3c/svg%3e")}#block-controls button:hover{background-color:#efefef}#block-controls button:focus-visible{border-color:#00f}#block-controls span.block-type{background-size:contain;display:block;width:18px;height:18px;margin:2px}.dropdown{z-index:10000001;display:block;position:absolute;box-shadow:0 12px 28px #0003,0 2px 4px #0000001a,inset 0 0 0 1px #ffffff80;border-radius:8px;min-width:100px;min-height:40px;max-height:400px;overflow:auto;background-color:#fff}.dropdown .item{margin:0 8px;padding:8px;color:#050505;cursor:pointer;line-height:16px;font-size:calc(15px * var(--font-scale, 1));display:flex;align-content:center;flex-direction:row;flex-shrink:0;justify-content:space-between;background-color:#fff;border-radius:8px;border:0;min-width:268px}.dropdown .item .active{display:flex;width:20px;height:20px;background-size:contain}.dropdown .item:first-child{margin-top:8px}.dropdown .item:last-child{margin-bottom:8px}.dropdown .item:hover{background-color:#eee}.dropdown .item .text{display:flex;line-height:20px;flex-grow:1;width:200px}.dropdown .item .icon{display:flex;width:20px;height:20px;-webkit-user-select:none;user-select:none;margin-right:12px;line-height:16px;background-size:contain}.actions i{background-size:contain;display:inline-block;height:20px;width:20px;vertical-align:-.25em}i.bold{background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='16'%20height='16'%20fill='currentColor'%20class='bi%20bi-type-bold'%3e%3cpath%20d='M8.21%2013c2.106%200%203.412-1.087%203.412-2.823%200-1.306-.984-2.283-2.324-2.386v-.055a2.176%202.176%200%200%200%201.852-2.14c0-1.51-1.162-2.46-3.014-2.46H3.843V13H8.21zM5.908%204.674h1.696c.963%200%201.517.451%201.517%201.244%200%20.834-.629%201.32-1.73%201.32H5.908V4.673zm0%206.788V8.598h1.73c1.217%200%201.88.492%201.88%201.415%200%20.943-.643%201.449-1.832%201.449H5.907z'/%3e%3c/svg%3e")}.dark .toolbar i.format,.dark .toolbar i.chevron-down{filter:invert(1)}.programme-editor-dialog .MuiDialog-paper{background:var(--bg-page)}.pf-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.pf-title h2{margin:0;font-size:calc(17px * var(--font-scale, 1));font-weight:800;letter-spacing:-.01em;color:var(--text-primary)}.pf-title-sub{display:block;margin-top:2px;color:var(--text-muted);font-size:calc(12.5px * var(--font-scale, 1));font-weight:500}.pf-close{flex-shrink:0;color:var(--text-muted)}.programme-editor-content{overflow-x:hidden}.pf-setup{display:flex;flex-wrap:wrap;align-items:stretch;gap:10px;padding:6px 0 14px}.pf-setup .pf-name{min-width:240px}.pf-setup .MuiOutlinedInput-root{background:var(--bg-surface)}.pf-field{display:flex;flex-direction:column;justify-content:center;gap:2px;min-width:170px;padding:5px 12px;border:1px solid var(--border-input);border-radius:8px;background:var(--bg-surface);font-family:inherit;text-align:left;cursor:pointer}.pf-field:hover{border-color:var(--brand-primary)}.pf-field-label{display:block;color:var(--text-muted);font-size:calc(11px * var(--font-scale, 1));font-weight:600}.pf-field-value{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--text-primary);font-size:calc(13.5px * var(--font-scale, 1));font-weight:600}.pf-field-value svg{color:var(--text-muted)}.pf-field-text{overflow:hidden;max-width:220px;text-overflow:ellipsis;white-space:nowrap}.pf-dims{display:flex;flex-direction:column;justify-content:center;gap:3px;padding:5px 2px}.pf-dims-chip{display:inline-flex;align-items:center;padding:3px 10px;border-radius:20px;background:var(--brand-light);color:var(--brand-primary);font-size:calc(12px * var(--font-scale, 1));font-weight:700;font-variant-numeric:tabular-nums}.pf-dims-chip.warn{background:var(--status-medium-bg);color:var(--status-medium-text)}.pf-workspace{display:flex;align-items:flex-start;gap:16px;width:100%;min-width:0}.programme-editor-preview-pane{width:min(560px,100%);min-width:0;flex:0 1 560px;overflow:hidden}.pf-pane-head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:36px;margin-bottom:8px}.pf-eyebrow{color:var(--text-muted);font-size:calc(11px * var(--font-scale, 1));font-weight:700;letter-spacing:.08em;text-transform:uppercase}.pf-pages{display:flex;flex-wrap:wrap;align-items:center;gap:5px}.pf-page-pill{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:30px;padding:0 10px;border:1px solid var(--border-default);border-radius:20px;background:var(--bg-surface);color:var(--text-secondary);font-family:inherit;font-size:calc(12.5px * var(--font-scale, 1));font-weight:700;cursor:pointer}.pf-page-pill:hover{border-color:var(--brand-primary);color:var(--brand-primary)}.pf-page-pill.active{border-color:transparent;background:var(--brand-gradient);color:#fff;box-shadow:var(--brand-glow)}.pf-page-pill.ghost{padding:0;width:30px;font-size:calc(15px * var(--font-scale, 1))}.pf-page-pill.ghost.danger:hover{border-color:var(--alert-error);color:var(--alert-error)}.pf-canvas{display:flex;justify-content:center;padding:14px;border-radius:16px;background:var(--bg-inset);box-shadow:var(--surface-shadow)}.pf-preview-stage{max-width:100%;overflow:hidden;background:#000}.pf-canvas-caption{margin-top:8px;color:var(--text-muted);font-size:calc(11.5px * var(--font-scale, 1));text-align:center;font-variant-numeric:tabular-nums}.pf-inspector{display:flex;flex:1;flex-direction:column;gap:12px;min-width:360px}.pf-section{display:flex;flex-direction:column;gap:10px;padding:15px 17px;border-radius:16px;background:var(--bg-surface);box-shadow:var(--surface-shadow)}.pf-section-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;min-height:30px}.pf-section-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.pf-hint{margin-top:-4px;color:var(--text-muted);font-size:calc(11.5px * var(--font-scale, 1))}.pf-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:stretch}.pf-color{display:flex;flex-direction:column;justify-content:center;gap:2px;padding:5px 12px;border:1px solid var(--border-input);border-radius:8px;background:var(--bg-surface);cursor:pointer}.pf-color:hover{border-color:var(--brand-primary)}.pf-color-well{position:relative;display:flex;align-items:center;gap:8px}.pf-color-well input[type=color]{position:absolute;inset:0;opacity:0;cursor:pointer}.pf-color-swatch{width:22px;height:22px;flex-shrink:0;border:1px solid var(--border-default);border-radius:6px}.pf-color-hex{color:var(--text-primary);font-size:calc(13px * var(--font-scale, 1));font-weight:600;font-variant-numeric:tabular-nums}.pf-editor{border:1px solid var(--border-default);border-radius:10px;overflow:hidden}.pf-align-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pf-align{display:flex;flex-direction:column;gap:5px}.pf-segment{display:flex;padding:3px;border-radius:9px;background:var(--bg-inset)}.pf-segment-item{flex:1;min-height:32px;padding:4px 8px;border:0;border-radius:7px;background:transparent;color:var(--text-secondary);font-family:inherit;font-size:calc(12px * var(--font-scale, 1));font-weight:700;cursor:pointer}.pf-segment-item:hover{color:var(--text-primary)}.pf-segment-item.active{background:var(--bg-surface);color:var(--brand-primary);box-shadow:0 1px 2px #0f172a1f}.pf-media-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.pf-media-tile{position:relative;overflow:hidden;aspect-ratio:4/3;border:1px solid var(--border-default);border-radius:8px;background:var(--bg-inset)}.pf-media-tile img,.pf-media-tile video{width:100%;height:100%;object-fit:cover;cursor:pointer}.pf-media-tile.selected{border-color:var(--brand-primary);box-shadow:0 0 0 2px var(--brand-primary)}.pf-media-delete{position:absolute;top:5px;right:5px;display:grid;place-items:center;width:24px;height:24px;border:0;border-radius:6px;background:#0f172a9e;color:#fff;font-size:calc(15px * var(--font-scale, 1));cursor:pointer;opacity:0;transition:opacity .15s}.pf-media-tile:hover .pf-media-delete{opacity:1}.pf-media-delete:hover{background:var(--alert-error)}.pf-media-pagination{margin-top:8px;display:flex;justify-content:center}.pf-actions{border-top:1px solid var(--border-subtle)}.pf-actions-hint{margin-right:auto;color:var(--text-muted);font-size:calc(12px * var(--font-scale, 1));font-variant-numeric:tabular-nums}.pf-actions-hint.warn{color:var(--status-medium-text)}@media(max-width:760px){.programme-editor-dialog .MuiDialogTitle-root{padding:14px 16px 10px}.programme-editor-content{padding:8px 12px 18px}.pf-setup>*{width:100%;min-width:0}.pf-field-text{max-width:none}.pf-workspace{flex-direction:column;gap:12px}.programme-editor-preview-pane{width:100%;flex-basis:auto}.pf-pane-head{flex-direction:column;align-items:flex-start}.pf-inspector{width:100%;min-width:0}.pf-page-grid,.pf-align-grid{grid-template-columns:1fr}.pf-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pf-media-delete{opacity:1}.programme-editor-dialog .MuiButton-root{min-height:44px}.pf-actions{position:sticky;right:0;bottom:0;left:0;z-index:5;padding:10px 12px max(10px,env(safe-area-inset-bottom));border-top:1px solid var(--border-default);background:var(--bg-surface)}.pf-actions-hint{display:none}}.dashboard-wrapper.vms-dashboard-wrapper{width:min(100%,1480px);min-width:0;max-width:none;gap:0;padding:14px 24px 18px}.vms-dashboard-wrapper>.MuiTabs-root{min-height:42px;margin-top:8px!important}.vms-dashboard-wrapper>.MuiTabs-root .MuiTab-root{min-height:42px;padding:8px 18px;font-weight:650;text-transform:none}.vms-dashboard-wrapper>.MuiTabPanel-root{margin-top:0!important;padding-top:14px}.vms-site-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;min-height:48px;padding:7px 16px;border-radius:14px;background:var(--bg-surface);box-shadow:var(--surface-shadow)}.vms-site-summary-item{display:flex;min-width:0;align-items:center;gap:12px;padding:0 18px;border-right:1px solid var(--border-subtle)}.vms-site-summary-icon{flex:0 0 auto;color:var(--text-primary)}.vms-site-summary-item:first-child{padding-left:0}.vms-site-summary-item:last-child{padding-right:0;border-right:0}.vms-site-summary-label{display:block;margin-bottom:2px;color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1));line-height:1.2}.vms-site-summary-value{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--text-primary);font-size:calc(12px * var(--font-scale, 1));font-weight:650;line-height:1.3;white-space:normal}.vms-overview-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px}.vms-overview-copy h2{margin:0;color:var(--text-primary);font-size:calc(19px * var(--font-scale, 1));font-weight:700}.vms-overview-copy p{margin:3px 0 0;color:var(--text-secondary);font-size:calc(13px * var(--font-scale, 1))}.vms-overview-stats{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:10px}.vms-machine-summary{grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:12px}.vms-stat{display:flex;min-width:150px;align-items:center;gap:12px;padding:10px 14px;border-radius:14px;background:var(--bg-surface);box-shadow:var(--surface-shadow)}.vms-stat-icon{display:grid;flex:0 0 42px;width:42px;height:42px;place-items:center;border-radius:50%;background:var(--brand-light);color:var(--brand-primary)}.vms-stat.online .vms-stat-icon{background:#e8f7ed;color:#16803c}.vms-stat.offline .vms-stat-icon{background:#ffeded;color:#dc2626}.vms-stat.scheduled .vms-stat-icon{background:#fff1e5;color:#e66b13}.vms-stat.manual .vms-stat-icon{background:#e7f6f7;color:#0d8290}.vms-stat-label{display:block;color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1))}.vms-stat-value{display:block;margin-top:1px;color:var(--text-primary);font-size:calc(24px * var(--font-scale, 1));font-weight:750;line-height:1.1}.vms-stat-note{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:2px;overflow:hidden;color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1));white-space:normal}.vms-tab-toolbar-row{display:flex;justify-content:flex-end;padding:6px 0 2px}.vms-machine-grid{display:grid;align-items:stretch}.vp-card-grid[data-size=l] .vms-machine-card .vms-machine-screenshot img{min-height:220px}.vp-card-grid[data-size=s] .vms-machine-card{font-size:calc(12px * var(--font-scale, 1))}.vms-machine-card{display:flex;min-width:0;overflow:hidden;flex-direction:column;border-radius:16px;background:var(--bg-surface);box-shadow:var(--surface-shadow);transition:box-shadow .2s,transform .2s}.vms-machine-card:hover{box-shadow:var(--surface-shadow-lift);transform:translateY(-2px)}.vms-machine-main{display:grid;min-width:0;flex:1;grid-template-columns:minmax(150px,43%) minmax(0,57%)}.vms-machine-card-header{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:10px;padding:0}.vms-machine-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0;color:var(--text-primary);font-size:calc(15px * var(--font-scale, 1));font-weight:700;white-space:normal}.vms-machine-screenshot{position:relative;display:grid;width:100%;min-height:188px;overflow:hidden;place-items:center;border:0;border-right:1px solid var(--border-default);background:var(--bg-inset);color:var(--text-secondary)}.vms-machine-screenshot img{width:100%;height:100%;object-fit:contain}.vms-screenshot-refresh{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;border:0;background:#0f172a00;color:transparent;cursor:pointer;font-size:calc(12px * var(--font-scale, 1));transition:background .16s ease,color .16s ease}.vms-screenshot-refresh:hover,.vms-screenshot-refresh:focus-visible{background:#0f172aa8;color:#fff}.vms-machine-body{display:flex;min-width:0;flex:1;flex-direction:column;gap:6px;padding:12px 14px}.vms-machine-identity{min-width:0;font-size:calc(11px * var(--font-scale, 1));color:var(--text-primary)}.vms-machine-identity>div{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:2px;white-space:normal}.vms-machine-identity span{color:var(--text-secondary);font-weight:600}.vms-machine-state-row{display:flex;min-width:0;flex-wrap:wrap;gap:5px}.vms-machine-reading-list{display:flex;min-width:0;flex-direction:column;margin-top:1px;padding-top:4px;border-top:1px solid var(--border-subtle)}.vms-machine-reading-list>div{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px;min-height:18px;color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1))}.vms-machine-reading-list strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-width:0;color:var(--text-primary);font-weight:650;white-space:normal}.vms-machine-reading-list .status-unavailable{color:#dc2626}.vms-machine-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:8px 12px;border-top:1px solid var(--border-default)}.vms-machine-actions .MuiButton-root{min-height:32px;font-size:calc(11px * var(--font-scale, 1));text-transform:none}.vms-today-schedule{overflow:hidden;margin-top:12px;border-radius:16px;background:var(--bg-surface);box-shadow:var(--surface-shadow)}.vms-today-schedule-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 14px;border-bottom:1px solid var(--border-subtle);color:var(--text-primary)}.vms-today-schedule-heading h2{margin:0;font-size:calc(15px * var(--font-scale, 1));font-weight:700}.vms-schedule-table-wrap{overflow-x:auto}.vms-schedule-table{width:100%;min-width:680px;border-collapse:collapse;color:var(--text-primary);font-size:calc(11px * var(--font-scale, 1));text-align:left}.vms-schedule-table th,.vms-schedule-table td{padding:7px 16px;border-bottom:1px solid var(--border-subtle)}.vms-schedule-table th{background:var(--bg-inset);color:var(--text-secondary);font-weight:650}.vms-today-schedule-empty{padding:24px;color:var(--text-secondary);font-size:calc(12px * var(--font-scale, 1));text-align:center}.vms-today-schedule-footer{display:flex;justify-content:center;padding:5px 12px}.vms-schedules-page{display:flex;flex-direction:column;gap:14px}.vms-schedule-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.vms-schedule-card{min-width:0;padding:16px;border-radius:16px;background:var(--bg-surface);box-shadow:var(--surface-shadow)}@media(max-width:1100px){.vms-overview-bar{align-items:stretch;flex-direction:column}.vms-machine-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.dashboard-wrapper.vms-dashboard-wrapper{padding:14px 14px 16px}.vms-site-summary,.vms-overview-stats,.vms-schedule-list{grid-template-columns:1fr}.vms-site-summary{gap:8px;padding:10px 12px}.vms-site-summary-item{padding:0 0 8px;border-right:0;border-bottom:1px solid var(--border-subtle)}.vms-site-summary-item:last-child{padding-bottom:0;border-bottom:0}.vms-stat{min-width:0}.vms-machine-main{grid-template-columns:1fr}.vms-machine-screenshot{min-height:190px;border-right:0;border-bottom:1px solid var(--border-default)}.vms-machine-actions .MuiButton-root{min-height:44px;font-size:calc(12px * var(--font-scale, 1))}.vms-machine-identity,.vms-machine-reading-list>div,.vms-stat-note,.vms-site-summary-label{font-size:calc(12px * var(--font-scale, 1))}.vms-stat-label,.vms-site-summary-value{font-size:calc(13px * var(--font-scale, 1))}.vms-screenshot-refresh{color:#fff;background:linear-gradient(to top,#0f172ab3,#0f172a00 55%);align-items:flex-end;padding-bottom:12px}.vms-schedule-table-wrap{scrollbar-gutter:stable;-webkit-overflow-scrolling:touch}.vms-schedule-table th:first-child,.vms-schedule-table td:first-child{position:sticky;left:0;background:var(--bg-surface);box-shadow:1px 0 0 var(--border-default);z-index:2}.vms-schedule-table th:first-child{background:var(--bg-inset);z-index:3}.vms-settings-dialog .MuiDialogTitle-root{padding:14px 16px 10px}.vms-settings-dialog .MuiDialogContent-root{padding:8px 14px 18px}.vms-settings-dialog .MuiTabs-root{min-height:44px}.vms-settings-dialog .MuiTab-root{min-height:44px;min-width:max-content;padding:8px 14px;letter-spacing:0;text-transform:none}.vms-settings-dialog .MuiTextField-root,.vms-settings-dialog .MuiFormControl-root{width:100%!important;min-width:0}.vms-settings-dialog .MuiFormControlLabel-root{align-items:flex-start;margin-right:0}.vms-settings-dialog .MuiButton-root{min-height:44px;letter-spacing:0;text-transform:none}.vms-settings-actions{position:sticky;right:0;bottom:0;left:0;flex-wrap:wrap;padding:10px 12px max(10px,env(safe-area-inset-bottom));border-top:1px solid var(--border-default);background:var(--bg-surface);z-index:4}.vms-settings-actions .MuiButton-root{flex:1 1 auto}.vms-workflow-dialog .MuiDialogTitle-root{padding:14px 16px 10px}.vms-workflow-dialog .MuiDialogContent-root{padding:12px 14px 18px}.vms-workflow-dialog .MuiButton-root,.vms-workflow-dialog .MuiIconButton-root{min-height:44px;letter-spacing:0;text-transform:none}.vms-workflow-actions{position:sticky;right:0;bottom:0;left:0;padding:10px 12px max(10px,env(safe-area-inset-bottom));border-top:1px solid var(--border-default);background:var(--bg-surface);z-index:4}}.dashboard-wrapper.vibration-dashboard-wrapper{width:min(100%,1480px);min-width:0;max-width:none;gap:0}.vib-grid-container{width:100%;min-height:0}.vib-tile-devices{flex:1;min-height:0;overflow-y:auto;padding:8px 12px 12px}.vib-devices-list{margin-top:6px}.sdm-kpis--in-tile{margin-top:0;height:100%;align-items:center}.vib-kpi-reading{font-size:calc(18px * var(--font-scale, 1))!important}.vib-kpi-reading small{font-size:calc(11px * var(--font-scale, 1));font-weight:600;color:var(--text-muted);margin-left:2px}.vibration-device-grid{margin-top:10px}.vibration-device-card{display:flex;min-width:0;flex-direction:column;gap:10px;padding:15px;border-radius:16px;background:var(--bg-surface);box-shadow:var(--surface-shadow);transition:box-shadow .2s,transform .2s}.vibration-device-card:hover{box-shadow:var(--surface-shadow-lift);transform:translateY(-2px)}.vibration-device-card.alarm{box-shadow:var(--surface-shadow),0 0 0 1.5px color-mix(in srgb,var(--alert-error) 55%,transparent)}.vibration-device-heading{display:flex;min-width:0;align-items:flex-start;justify-content:space-between;gap:8px}.vibration-device-heading>div{min-width:0}.vibration-device-heading h3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;overflow:hidden;color:var(--text-primary);font-size:calc(14px * var(--font-scale, 1));font-weight:700;white-space:normal}.vibration-device-heading>div>span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:2px;overflow:hidden;color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1));white-space:normal}.vibration-device-badges{display:flex;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end;gap:4px}.vibration-status{flex:0 0 auto;padding:3px 7px;border-radius:999px;background:#e8f6ec;color:#16803c;font-size:calc(11px * var(--font-scale, 1));font-weight:700}.vibration-status.demo{background:var(--brand-light);color:var(--brand-primary)}.vibration-status.alarm.first{background:#fff3df;color:#a64b00}.vibration-status.alarm.second{background:#ffead5;color:#9a3412}.vibration-status.alarm.third{background:#fee2e2;color:#b91c1c}.vibration-vector-reading{padding:8px 10px;border:1px solid var(--border-subtle);border-radius:5px;background:var(--bg-inset)}.vibration-vector-reading>span{display:block;color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1))}.vibration-vector-reading>strong{display:block;color:var(--brand-primary);font-size:calc(22px * var(--font-scale, 1));font-weight:750}.vibration-vector-reading.alarm>strong{color:#c62828}.vibration-threshold-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px;padding-top:6px;border-top:1px solid var(--border-default)}.vibration-threshold-row>span{color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1))}.vibration-threshold-row>strong{color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1));font-weight:700;white-space:nowrap}.vibration-threshold-row.exceeded>span,.vibration-threshold-row.exceeded>strong{color:#c25b05}.vibration-vector-reading small,.vibration-axis-grid small{margin-left:3px;font-size:calc(11px * var(--font-scale, 1));font-weight:600}.vibration-axis-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.vibration-axis-grid>span{min-width:0;color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1))}.vibration-axis-grid strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:2px;color:var(--text-primary);font-size:calc(12px * var(--font-scale, 1));white-space:normal}.vibration-reading-time{color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1))}.vibration-view-data{display:inline-flex;min-height:34px;align-items:center;justify-content:center;gap:5px;margin-top:auto;border:1px solid var(--brand-light);border-radius:5px;background:var(--bg-surface);color:var(--brand-primary);font-size:calc(11px * var(--font-scale, 1));font-weight:650}.vibration-view-data:hover{background:var(--brand-light)}.vibration-empty{grid-column:1/-1;padding:50px 20px;border-radius:14px;background:var(--bg-surface);box-shadow:var(--surface-shadow);color:var(--text-secondary);text-align:center}.vibration-data-view{display:flex;flex-direction:column;gap:10px}.vp-card-grid[data-size=s] .vibration-device-card{padding:10px 11px}.vp-card-grid[data-size=s] .vibration-vector-reading>strong{font-size:calc(18px * var(--font-scale, 1))}.vp-card-grid[data-size=s] .vibration-axis-grid>span,.vp-card-grid[data-size=s] .vibration-status,.vp-card-grid[data-size=s] .vibration-reading-time{font-size:calc(11px * var(--font-scale, 1))}.vp-card-grid[data-size=l] .vibration-device-card{padding:18px;gap:14px}.vp-card-grid[data-size=l] .vibration-vector-reading>strong{font-size:calc(30px * var(--font-scale, 1))}.vp-card-grid[data-size=l] .vibration-axis-grid{gap:10px}.vp-card-grid[data-size=l] .vibration-axis-grid strong{font-size:calc(15px * var(--font-scale, 1))}.vp-card-grid[data-size=l] .vibration-reading-time{font-size:calc(11px * var(--font-scale, 1))}.vp-card-grid[data-size=l] .vibration-view-data{min-height:40px;font-size:calc(13px * var(--font-scale, 1))}@media(max-width:760px){.dashboard-wrapper.vibration-dashboard-wrapper{padding:16px 14px 24px}.vibration-status,.vibration-vector-reading>span,.vibration-threshold-row>span,.vibration-threshold-row>strong,.vibration-vector-reading small,.vibration-axis-grid small,.vibration-axis-grid>span,.vibration-reading-time{font-size:calc(12px * var(--font-scale, 1))}.vibration-view-data{min-height:44px;font-size:calc(13px * var(--font-scale, 1))}}.login-page{width:100%;max-width:100%;min-height:100vh;min-height:100dvh;height:100vh;height:100dvh;overflow:hidden;box-sizing:border-box;background:var(--page-wash);color:var(--text-primary);display:flex;flex-direction:column;text-align:left}.login-topbar{height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,3vw,36px);flex:none}.login-brand{display:flex;align-items:center;gap:9px}.login-brand-logo{width:26px;height:26px;object-fit:contain;flex:none}.login-brand span{color:var(--text-primary);font-size:calc(15.5px * var(--font-scale, 1));font-weight:700;line-height:1;letter-spacing:0}.login-shell{flex:1;width:min(1480px,100% - 96px);margin:0 auto;display:grid;grid-template-columns:minmax(560px,.98fr) 1px minmax(480px,.98fr);gap:70px;align-items:center;min-height:0;padding:clamp(10px,1.5vh,18px) 0;box-sizing:border-box}.login-shell>*,.login-card,.login-form,.login-field{min-width:0;max-width:100%;box-sizing:border-box}.mobile-product-switcher{display:none}.site-login-shell{flex:1;min-height:0;display:grid;place-items:center;padding:20px;box-sizing:border-box}.site-login-card{width:min(400px,100%);max-width:100%;padding:32px 30px;border-radius:16px;background:var(--bg-surface);box-shadow:var(--surface-shadow);box-sizing:border-box}.site-login-mark{display:block;width:30px;height:30px;margin:0 auto 12px;object-fit:contain}.site-login-card .login-card-header{margin-bottom:22px}.site-login-card .login-card-header h2{margin:0 0 4px;font-size:calc(21px * var(--font-scale, 1));font-weight:750}.site-login-card .login-card-header p{font-size:calc(13px * var(--font-scale, 1))}.site-login-card .login-form{gap:16px}.site-login-card .login-field{gap:6px}.site-login-card .login-field label{color:var(--text-secondary);font-size:calc(13px * var(--font-scale, 1));font-weight:650}.site-login-card .login-field .MuiOutlinedInput-root{height:44px;border-radius:10px;font-size:calc(14.5px * var(--font-scale, 1))}.site-login-card .login-options label{font-size:calc(13.5px * var(--font-scale, 1));font-weight:500}.site-login-card .login-help-button{color:var(--text-secondary);font-size:calc(13px * var(--font-scale, 1));font-weight:600}.site-login-card .login-help-button:hover{color:var(--brand-primary)}.site-login-card .login-submit{height:44px;border-radius:10px;font-size:calc(14.5px * var(--font-scale, 1));font-weight:700;box-shadow:none}.site-login-card .login-submit:hover:not(:disabled){box-shadow:none}.site-login-card .login-error{padding:10px 12px;font-size:calc(13px * var(--font-scale, 1))}.product-session-state{min-height:70vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:24px;color:var(--text-secondary);text-align:center}.product-session-state h1,.product-session-state p{margin:0}.product-session-state h1{color:var(--text-primary);font-size:calc(28px * var(--font-scale, 1))}.product-session-state a{color:var(--brand-primary);font-weight:700}.product-panel{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:12px;box-shadow:0 14px 36px #121f3814;padding:clamp(24px,3.4vh,36px) 40px;max-height:100%;box-sizing:border-box}.product-panel-header{text-align:center;margin-bottom:clamp(18px,3vh,30px)}.product-panel-header h1{margin:0 0 10px;color:var(--text-primary);font-size:clamp(26px,3.4vh,32px);font-weight:850;letter-spacing:0}.product-panel-header p,.login-card-header p,.product-card p,.login-note,.login-footer{color:var(--text-secondary)}.product-panel-header p{margin:0;font-size:calc(17px * var(--font-scale, 1))}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,2vh,18px)}.product-card{min-height:clamp(108px,15vh,140px);border:1px solid var(--border-default);border-radius:10px;background:var(--bg-surface);color:var(--text-primary);text-decoration:none;display:grid;grid-template-columns:82px minmax(0,1fr);align-items:center;gap:14px;padding:18px;position:relative;box-shadow:0 6px 18px #121f3808;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.product-card:hover{transform:translateY(-1px);border-color:#8eb5fb;box-shadow:0 10px 26px #121f3812}.product-card.active{border:2px solid var(--brand-primary);box-shadow:0 12px 30px #075ff01f}.product-card h2{margin:0 0 7px;font-size:clamp(20px,2.5vh,23px);font-weight:850;line-height:1.1}.product-card p{margin:0;font-size:clamp(14px,1.8vh,16px);line-height:1.35}.product-icon,.login-product-icon{border-radius:50%;display:grid;place-items:center;flex:none}.product-icon{width:clamp(62px,8vh,74px);height:clamp(62px,8vh,74px)}.product-icon.ecm{color:#3c9a18;background:#eaf8ec}.product-icon.slm{color:#0d7bf2;background:#eaf4ff}.product-icon.heatstress{color:#f59e0b;background:#fff2d7}.product-icon.vibration{color:#7e22ce;background:#f2e5ff}.product-icon.flow{color:#0ea5e9;background:#e8f7ff}.product-icon.vms{color:#0a55d6;background:#edf4ff}.product-check{position:absolute;top:14px;right:14px;color:var(--brand-primary);background:var(--bg-surface);border-radius:50%}.login-divider{height:min(610px,72vh);background:var(--border-default)}.login-card{display:flex;flex-direction:column;justify-content:center;width:min(520px,100%);margin:0 auto;max-height:100%}.login-card>.login-brand{justify-content:center;margin-bottom:22px}.login-product-icon{width:clamp(90px,11vh,112px);height:clamp(90px,11vh,112px);border:1px solid var(--border-default);background:var(--brand-light);color:var(--brand-primary)}.login-product-icon svg{font-size:calc(48px * var(--font-scale, 1))}.login-product-icon.ecm{color:#3c9a18;background:#eaf8ec}.login-product-icon.slm{color:#0d7bf2;background:#eaf4ff}.login-product-icon.heatstress{color:#f59e0b;background:#fff2d7}.login-product-icon.vibration{color:#7e22ce;background:#f2e5ff}.login-product-icon.flow{color:#0ea5e9;background:#e8f7ff}.login-card-header{text-align:center;margin-bottom:clamp(20px,3vh,34px)}.login-card-header h2{margin:0 0 10px;color:var(--text-primary);font-size:clamp(34px,4.5vh,42px);font-weight:850;line-height:1.08;letter-spacing:0}.login-card-header p{margin:0;font-size:calc(18px * var(--font-scale, 1))}.login-error{border:1px solid #f5b7b1;background:var(--status-high-bg);color:var(--alert-error);border-radius:8px;padding:11px 13px;margin-bottom:18px;font-size:calc(14px * var(--font-scale, 1));font-weight:700}.login-form{display:flex;flex-direction:column;gap:clamp(16px,2.4vh,24px)}.login-field{display:flex;flex-direction:column;gap:8px}.login-field label{color:var(--text-primary);font-size:calc(15px * var(--font-scale, 1));font-weight:700}.login-field .MuiOutlinedInput-root{height:clamp(50px,6.5vh,58px);border-radius:8px;background:var(--bg-surface);font-size:calc(16px * var(--font-scale, 1))}.login-field .MuiOutlinedInput-notchedOutline{border-color:var(--border-input)}.login-field .MuiInputAdornment-root svg{color:var(--text-secondary)}.login-options{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:-2px}.login-options label{display:inline-flex;align-items:center;gap:8px;color:var(--text-primary);font-size:calc(16px * var(--font-scale, 1));font-weight:500}.login-options a,.login-help-button{color:var(--brand-primary);font-size:calc(16px * var(--font-scale, 1));font-weight:700;text-decoration:none}.login-help-button{padding:0;border:0;background:transparent;font-family:inherit;cursor:pointer}.login-help-button:hover{text-decoration:underline}.login-submit{width:100%;height:clamp(52px,6.8vh,62px);border:0;border-radius:8px;background:var(--brand-primary);color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-family:inherit;text-transform:none;font-size:calc(18px * var(--font-scale, 1));font-weight:800;box-shadow:0 12px 24px #075ff029}.login-submit:hover:not(:disabled){background:var(--brand-primary-hover);box-shadow:0 12px 24px #075ff033}.login-submit:disabled{background:var(--border-default)!important;color:var(--text-secondary)!important;-webkit-text-fill-color:var(--text-secondary);box-shadow:none!important;cursor:not-allowed}.login-submit-progress{display:inline-flex;align-items:center;justify-content:center;gap:10px}.login-submit-label{color:#fff;-webkit-text-fill-color:#fff}.login-submit:disabled .login-submit-label{color:var(--text-secondary);-webkit-text-fill-color:var(--text-secondary)}.login-note{margin-top:clamp(18px,2.6vh,26px);border:1px solid var(--border-default);border-radius:8px;background:var(--bg-surface);padding:16px 18px;display:flex;align-items:center;gap:14px;font-size:calc(15px * var(--font-scale, 1))}.login-note svg{color:var(--brand-primary)}.login-footer{height:clamp(44px,5.5vh,52px);min-height:44px;flex:none;border-top:1px solid var(--border-subtle);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 32px;font-size:calc(12.5px * var(--font-scale, 1))}.login-footer>span{grid-column:2}.login-footer-resources,.login-footer-actions{display:flex;align-items:center;gap:16px}.login-footer-resources{grid-column:1;justify-self:start}.login-footer-actions{grid-column:3;justify-self:end}.login-footer a,.login-footer button{color:var(--text-secondary);text-decoration:none;display:inline-flex;align-items:center;gap:10px}.login-footer button{padding:0;border:0;background:transparent;font:inherit;cursor:pointer}.login-footer a:hover,.login-footer button:hover{color:var(--brand-primary)}.footer-separator{width:1px;height:14px;background:var(--border-default)}@media(max-width:1120px){.login-page{height:auto;min-height:100vh;overflow:auto}.login-shell{grid-template-columns:1fr;gap:28px}.login-divider{display:none}.login-card{width:min(680px,100%);order:1}.product-panel{order:2}}@media(max-width:720px){.login-page{overflow-x:hidden}.login-topbar{height:auto;padding:14px 16px}.login-shell{flex:0 0 auto;width:100%;max-width:100%;gap:14px;padding:4px 16px 18px;align-items:stretch;align-content:start;grid-template-rows:auto auto}.site-login-shell{display:block;width:100%;padding:4px 16px 18px}.site-login-card{padding:24px 18px}.product-panel{display:none}.mobile-product-switcher{display:flex;flex-direction:column;gap:6px;order:0}.mobile-product-switcher label{color:var(--text-secondary);font-size:calc(14px * var(--font-scale, 1));font-weight:700}.mobile-product-switcher select{width:100%;max-width:100%;box-sizing:border-box;height:46px;border:1px solid var(--border-input);border-radius:8px;background:var(--bg-surface);color:var(--text-primary);padding:0 14px;font:inherit;font-size:calc(16px * var(--font-scale, 1))}.login-card>.login-brand{display:none}.login-card-header{margin-bottom:18px}.login-card-header h2{margin-bottom:6px;font-size:calc(30px * var(--font-scale, 1))}.login-card-header p{font-size:calc(15px * var(--font-scale, 1))}.login-form{gap:15px}.login-options{align-items:center;flex-direction:row;gap:10px;min-width:0}.login-options label,.login-help-button{font-size:calc(14px * var(--font-scale, 1))}.login-options label{flex:none}.login-help-button{min-width:0;text-align:right;white-space:normal}.login-note{margin-top:14px;padding:11px 13px;font-size:calc(13px * var(--font-scale, 1))}.login-footer{height:auto;min-height:0;grid-template-columns:1fr;gap:10px;justify-items:center;padding:14px 16px;font-size:calc(13px * var(--font-scale, 1))}.login-footer-resources,.login-footer-actions{gap:16px}.login-footer a,.login-footer button{min-height:44px;justify-content:center}.login-footer>span,.login-footer>div{grid-column:auto;justify-self:center}}@media(min-width:1121px)and (max-height:820px){.login-shell{gap:48px}.product-panel{padding:18px 30px}.product-panel-header{margin-bottom:14px}.product-panel-header h1{margin-bottom:5px;font-size:calc(26px * var(--font-scale, 1))}.product-panel-header p,.product-card p{font-size:calc(14px * var(--font-scale, 1))}.product-grid{gap:10px 14px}.product-card{min-height:92px;padding:11px 14px;grid-template-columns:64px minmax(0,1fr)}.product-card h2{margin-bottom:4px;font-size:calc(19px * var(--font-scale, 1))}.product-icon{width:56px;height:56px}.login-divider{height:min(540px,74vh)}.login-card>.login-brand{margin-bottom:10px}.login-product-icon{width:74px;height:74px}.login-product-icon svg{font-size:calc(38px * var(--font-scale, 1))}.login-card-header{margin-bottom:16px}.login-card-header h2{margin-bottom:5px;font-size:calc(31px * var(--font-scale, 1))}.login-card-header p,.login-options label,.login-options a,.login-help-button{font-size:calc(14px * var(--font-scale, 1))}.login-form{gap:12px}.login-field{gap:5px}.login-field .MuiOutlinedInput-root{height:44px}.login-submit{height:46px}.login-note{margin-top:12px;padding:10px 14px}}.dashboard-wrapper.heatstress-dashboard-wrapper{width:min(100%,1480px);min-width:0;max-width:none;gap:0}.sdm-kpi.caution .sdm-kpi-ico{background:var(--status-medium-bg);color:var(--status-medium-text)}@media(min-width:1200px){.heatstress-kpis{grid-template-columns:repeat(5,1fr)}}.hs-grid-container{min-width:0}.hs-trend-inner{display:flex;flex-direction:column;height:100%;padding:12px 16px 10px;gap:8px}.hs-trend-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-shrink:0}.hs-trend-head h2{margin:0;color:var(--text-primary);font-size:calc(14px * var(--font-scale, 1));font-weight:700}.hs-trend-head p{margin:2px 0 0;color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1))}.hs-trend-canvas{flex:1 1 0;min-height:0;position:relative}.hs-status-inner{display:flex;flex-direction:column;height:100%;overflow:hidden}.hs-status-list{flex:1 1 0;overflow-y:auto}.heatstress-live-grid{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(300px,.9fr);gap:12px}.heatstress-chart-panel,.heatstress-status-panel{min-width:0;border-radius:16px;background:var(--bg-surface);box-shadow:var(--surface-shadow)}.heatstress-chart-panel{padding:15px 16px 12px}.heatstress-status-panel{overflow:hidden}.heatstress-panel-heading{display:flex;min-height:44px;align-items:flex-start;justify-content:space-between;gap:12px}.heatstress-status-panel .heatstress-panel-heading{padding:15px 16px 10px;border-bottom:1px solid var(--border-default)}.heatstress-panel-heading h3{margin:0;color:var(--text-primary);font-size:calc(14px * var(--font-scale, 1));font-weight:700}.heatstress-panel-heading p{margin:2px 0 0;color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1))}.heatstress-threshold-legend{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.heatstress-threshold-legend span{padding:3px 6px;border-radius:4px;font-size:calc(11px * var(--font-scale, 1));font-weight:650}.heatstress-threshold-legend .safe{background:#e8f6ec;color:#16803c}.heatstress-threshold-legend .caution{background:#fff3df;color:#c25b05}.heatstress-threshold-legend .danger{background:#feecec;color:#dc2626}.heatstress-overview-chart{height:300px}.heatstress-empty-chart{display:grid;height:100%;place-items:center;color:var(--text-secondary);font-size:calc(12px * var(--font-scale, 1))}.heatstress-status-list{max-height:344px;overflow-y:auto}.heatstress-status-row{display:grid;width:100%;min-height:67px;grid-template-columns:4px minmax(95px,1fr) 62px 42px 56px;align-items:center;gap:8px;padding:8px 12px;border:0;border-bottom:1px solid var(--border-default);background:var(--bg-surface);text-align:left}.heatstress-status-row:last-child{border-bottom:0}.heatstress-status-row:hover{background:var(--bg-inset)}.heatstress-device-stripe{width:4px;height:34px;border-radius:2px}.heatstress-device-name{min-width:0}.heatstress-device-name strong,.heatstress-device-name small{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:normal}.heatstress-device-name strong{color:var(--text-primary);font-size:calc(13px * var(--font-scale, 1))}.heatstress-device-name small{margin-top:2px;color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1))}.heatstress-device-reading{color:#16803c;font-size:calc(12px * var(--font-scale, 1));font-weight:750;text-align:right}.heatstress-device-reading.caution{color:#c25b05}.heatstress-device-reading.danger{color:#dc2626}.heatstress-device-reading.unknown{color:var(--text-secondary)}.heatstress-device-time{color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1));text-align:center}.heatstress-reading-status{padding:3px 5px;border-radius:4px;background:#e8f6ec;color:#16803c;font-size:calc(11px * var(--font-scale, 1));font-weight:700;text-align:center}.heatstress-reading-status.caution{background:#fff3df;color:#c25b05}.heatstress-reading-status.danger{background:#feecec;color:#dc2626}.heatstress-reading-status.unknown,.heatstress-reading-status.offline{background:var(--bg-inset);color:var(--text-secondary)}.heatstress-reading-status.missing-reading{background:#fff0e6;color:#b54708}.heatstress-detail-view{display:flex;flex-direction:column;gap:10px}@media(max-width:760px){.heatstress-panel-heading{flex-direction:column}.heatstress-threshold-legend{justify-content:flex-start}.heatstress-overview-chart{height:260px}.heatstress-status-row{grid-template-columns:4px minmax(80px,1fr) 58px 50px}.heatstress-device-time{display:none}.heatstress-panel-heading p,.heatstress-threshold-legend span,.heatstress-device-name strong,.heatstress-device-name small,.heatstress-reading-status{font-size:calc(12px * var(--font-scale, 1))}.heatstress-status-row{min-height:72px}}.hs-rt-grid{margin-top:4px;text-align:left}.hs-rt-hero{height:100%;min-height:0;padding:18px 20px 16px;overflow:hidden}.hs-rt-now{display:flex;flex-wrap:wrap;align-items:center;gap:14px}.hs-rt-value{color:var(--text-primary);font-size:calc(40px * var(--font-scale, 1));font-weight:800;line-height:1}.hs-rt-unit{margin-left:6px;color:var(--text-secondary);font-size:calc(13px * var(--font-scale, 1));font-weight:600}.hs-rt-chip{display:inline-flex;align-items:center;gap:7px;padding:6px 13px;border-radius:999px;font-size:calc(12.5px * var(--font-scale, 1));font-weight:700}.hs-rt-chip.safe{background:var(--status-resolved-bg);color:var(--status-resolved-text)}.hs-rt-chip.caution{background:var(--status-medium-bg);color:var(--status-medium-text)}.hs-rt-chip.danger{background:var(--status-high-bg);color:var(--status-high-text)}.hs-rt-chip.none{background:var(--bg-inset);color:var(--text-secondary)}.hs-rt-dot{width:7px;height:7px;border-radius:50%;background:currentColor}.hs-rt-meta{margin:9px 0 0;color:var(--text-secondary);font-size:calc(12.5px * var(--font-scale, 1))}.hs-rt-scale{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:14px}.hs-rt-zone{display:flex;align-items:baseline;gap:8px;min-width:0;padding:8px 12px;border-radius:10px;background:var(--bg-inset);color:var(--text-muted)}.hs-rt-zone strong{font-size:calc(12.5px * var(--font-scale, 1));font-weight:700}.hs-rt-zone span{font-size:calc(11.5px * var(--font-scale, 1));white-space:nowrap}.hs-rt-zone.safe.active{background:var(--status-resolved-bg);color:var(--status-resolved-text)}.hs-rt-zone.caution.active{background:var(--status-medium-bg);color:var(--status-medium-text)}.hs-rt-zone.danger.active{background:var(--status-high-bg);color:var(--status-high-text)}.hs-rt-chart{display:flex;flex-direction:column;height:100%;min-height:0;padding:12px 16px}.hs-rt-chart-head{display:flex;justify-content:flex-end;flex-shrink:0}.hs-rt-chart-head span{color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1))}.hs-rt-canvas{position:relative;flex:1;min-height:0;margin-top:8px}@media(max-width:767px){.hs-rt-value{font-size:calc(34px * var(--font-scale, 1))}}.dashboard-wrapper.flow-dashboard-wrapper{width:min(100%,1480px);min-width:0;max-width:none;gap:0}.flow-archive-view{display:flex;min-width:0;flex-direction:column;gap:10px}.flow-archive-device-bar{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:14px;background:var(--bg-surface);box-shadow:var(--surface-shadow)}.flow-archive-device-bar label{color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1));font-weight:650}.flow-archive-device-bar select{width:min(100%,320px)}.flow-device-picker select,.flow-archive-device-bar select{min-height:36px;padding:6px 32px 6px 10px;border:1px solid var(--border-input);border-radius:5px;background:var(--bg-surface);color:var(--text-primary);font-size:calc(12px * var(--font-scale, 1))}.flow-device-picker select:focus,.flow-archive-device-bar select:focus{border-color:var(--brand-primary);outline:2px solid rgba(37,99,235,.14)}.flow-realtime-root{display:flex;flex-direction:column;gap:0}.flow-realtime-device-bar{display:flex;align-items:center;justify-content:flex-end;padding:8px 0 10px}.flow-device-picker{display:flex;min-width:250px;flex-direction:column;gap:4px;color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1))}.flow-grid-container{min-width:0}.flow-kpis-body.sdm-kpis{grid-template-columns:repeat(3,1fr);margin-top:0;padding:10px 12px;height:100%;align-content:center}.flow-metrics-body{display:flex;flex-direction:column;height:100%;padding:10px 12px 8px;gap:8px}.flow-selected-device-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0}.flow-selected-device-info{display:flex;align-items:baseline;gap:8px;min-width:0}.flow-selected-device-info strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--text-primary);font-size:calc(13px * var(--font-scale, 1));font-weight:700;white-space:normal}.flow-selected-device-info span{color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1));white-space:nowrap}.flow-selected-device-updated{color:var(--text-muted);font-size:calc(11px * var(--font-scale, 1));white-space:nowrap;flex-shrink:0}.flow-missing-reading-badge{padding:3px 6px;border-radius:4px;background:#fff0e6;color:#b54708;font-size:calc(11px * var(--font-scale, 1));font-style:normal;font-weight:700;white-space:nowrap}.flow-metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;flex:1}.flow-metric-card{display:flex;min-width:0;align-items:center;gap:12px;padding:12px 14px;border-radius:10px;background:var(--bg-inset);border:1px solid var(--border-subtle)}.flow-metric-card>span:last-child{min-width:0}.flow-metric-icon{display:grid;flex:0 0 36px;width:36px;height:36px;place-items:center;border-radius:6px;background:var(--brand-light);color:var(--brand-primary)}.flow-metric-icon svg{width:16px;height:16px}.flow-metric-card small{display:block;color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1))}.flow-metric-card strong{display:block;color:var(--text-primary);font-size:calc(21px * var(--font-scale, 1));font-weight:750;line-height:1.2}.flow-metric-card strong em{margin-left:4px;color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1));font-style:normal;font-weight:600}.flow-metric-card>span:last-child>span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1));white-space:normal}.flow-charts-body{display:flex;flex-direction:column;height:100%;padding:8px 12px 10px}.flow-chart-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;height:100%}.flow-chart-inner{min-width:0;display:flex;flex-direction:column;padding:10px 12px;background:var(--bg-surface);border-radius:16px;box-shadow:var(--surface-shadow)}.flow-chart-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-shrink:0}.flow-chart-heading h3{margin:0;color:var(--text-primary);font-size:calc(12px * var(--font-scale, 1));font-weight:700}.flow-chart-heading span{color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1))}.flow-chart-canvas{flex:1;min-height:0;margin-top:4px}.flow-empty-chart{display:grid;height:100%;place-items:center;color:var(--text-secondary);font-size:calc(11px * var(--font-scale, 1))}@media(max-width:1100px){.flow-chart-grid{grid-template-columns:1fr}}@media(max-width:767px){.dashboard-wrapper.flow-dashboard-wrapper{padding:16px 14px 24px}.flow-kpis-body.sdm-kpis,.flow-metric-grid{grid-template-columns:1fr}.flow-realtime-device-bar{justify-content:flex-start}.flow-device-picker{min-width:0;width:100%}.flow-device-picker select,.flow-archive-device-bar select{min-height:44px;font-size:calc(14px * var(--font-scale, 1))}.flow-selected-device-bar{align-items:flex-start;flex-direction:column;gap:2px}.flow-selected-device-info{align-items:flex-start;flex-direction:column}}
