@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/poppins-400-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+2074,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/poppins-400-latin-ext.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/poppins-500-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+2074,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/poppins-500-latin-ext.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/poppins-600-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+2074,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/poppins-600-latin-ext.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/poppins-700-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+2074,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/poppins-700-latin-ext.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Mulish;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/mulish-400-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+2074,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Mulish;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/mulish-400-latin-ext.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Mulish;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/mulish-500-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+2074,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Mulish;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/mulish-500-latin-ext.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Mulish;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/mulish-600-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+2074,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Mulish;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/mulish-600-latin-ext.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Mulish;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/mulish-700-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+2074,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Mulish;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/mulish-700-latin-ext.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Mulish;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/mulish-800-latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+2074,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Mulish;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/mulish-800-latin-ext.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}:root{--navy-950:#0d1226;--navy-900:#141a35;--navy-800:#1f2a51;--navy-700:#283566;--navy-600:#34457e;--navy-500:#455598;--navy-400:#6573ac;--navy-300:#909bc5;--navy-200:#bfc6dd;--navy-100:#e0e4ef;--navy-50:#f1f3f8;--red-800:#960000;--red-700:#c00000;--red-600:#e00202;--red-500:#fe0202;--red-400:#ff3d3d;--red-300:#ff8080;--red-200:#ffbcbc;--red-100:#ffe1e1;--red-50:#fff3f3;--white:#fff;--gray-50:#f6f7fa;--gray-100:#eef0f5;--gray-200:#e0e3ec;--gray-300:#cbd0dc;--gray-400:#9aa1b4;--gray-500:#6e7689;--gray-600:#515869;--gray-700:#3b4151;--gray-800:#262b38;--gray-900:#161a24;--black:#0b0e16;--green-600:#157a45;--green-500:#1f9152;--green-100:#dcf3e6;--green-50:#effaf3;--amber-600:#b06d00;--amber-500:#d18400;--amber-100:#fbedcf;--amber-50:#fdf7e8;--blue-600:#1f5fc0;--blue-500:#2a72db;--blue-100:#d9e6fa;--blue-50:#eef4fd;--danger-600:#c01f1f;--danger-500:#dc2b2b;--danger-100:#fbdede;--danger-50:#fdf0f0;--color-bg:var(--gray-50);--color-surface:var(--white);--color-surface-sunken:var(--gray-100);--color-surface-ink:var(--navy-800);--color-surface-ink-2:var(--navy-900);--text-strong:var(--navy-800);--text-body:var(--gray-800);--text-muted:var(--gray-600);--text-faint:var(--gray-400);--text-on-dark:var(--white);--text-on-dark-muted:var(--navy-200);--text-accent:var(--red-600);--text-link:var(--navy-700);--border:var(--gray-200);--border-strong:var(--gray-300);--border-ink:var(--navy-800);--divider-on-dark:hsla(0,0%,100%,.12);--brand:var(--navy-800);--brand-ink:var(--navy-900);--brand-hover:var(--navy-700);--brand-active:var(--navy-900);--brand-subtle:var(--navy-50);--accent:var(--red-600);--accent-hover:var(--red-700);--accent-active:var(--red-800);--accent-subtle:var(--red-50);--success:var(--green-500);--success-bg:var(--green-50);--warning:var(--amber-500);--warning-bg:var(--amber-50);--info:var(--blue-500);--info-bg:var(--blue-50);--danger:var(--danger-500);--danger-bg:var(--danger-50);--focus-ring:0 0 0 3px rgba(52,69,126,.35);--focus-ring-accent:0 0 0 3px rgba(254,2,2,.28);--font-display:"Poppins","Segoe UI",system-ui,sans-serif;--font-body:"Mulish","Segoe UI",system-ui,sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,monospace;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-extra:800;--text-2xs:0.6875rem;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-md:1.125rem;--text-lg:1.25rem;--text-xl:1.5rem;--text-2xl:1.875rem;--text-3xl:2.375rem;--text-4xl:3rem;--text-5xl:3.75rem;--text-6xl:4.75rem;--leading-none:1;--leading-tight:1.12;--leading-snug:1.25;--leading-normal:1.5;--leading-relaxed:1.65;--tracking-tighter:-0.03em;--tracking-tight:-0.015em;--tracking-normal:0;--tracking-wide:0.04em;--tracking-wider:0.08em;--tracking-widest:0.14em;--type-display-font:var(--font-display);--type-display-weight:var(--weight-bold);--type-display-tracking:var(--tracking-tighter);--type-display-leading:var(--leading-tight);--type-heading-font:var(--font-display);--type-heading-weight:var(--weight-semibold);--type-heading-tracking:var(--tracking-tight);--type-heading-leading:var(--leading-snug);--type-body-font:var(--font-body);--type-body-weight:var(--weight-regular);--type-body-leading:var(--leading-normal);--type-overline-font:var(--font-display);--type-overline-weight:var(--weight-semibold);--type-overline-size:var(--text-xs);--type-overline-tracking:var(--tracking-wider);--type-overline-transform:uppercase;--space-0:0;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:2rem;--space-8:2.5rem;--space-9:3rem;--space-10:4rem;--space-11:5rem;--space-12:6rem;--space-14:8rem;--space-16:10rem;--radius-xs:3px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-2xl:32px;--radius-pill:999px;--radius-circle:50%;--shadow-xs:0 1px 2px rgba(15,20,40,.06);--shadow-sm:0 1px 3px rgba(15,20,40,.08),0 1px 2px rgba(15,20,40,.05);--shadow-md:0 4px 12px rgba(15,20,40,.08),0 2px 4px rgba(15,20,40,.05);--shadow-lg:0 12px 28px rgba(15,20,40,.12),0 4px 8px rgba(15,20,40,.06);--shadow-xl:0 24px 56px rgba(15,20,40,.16),0 8px 16px rgba(15,20,40,.07);--shadow-ink:0 18px 48px rgba(13,18,38,.3);--container-sm:640px;--container-md:820px;--container-lg:1080px;--container-xl:1240px;--container-2xl:1400px;--gutter:var(--space-6);--section-y:var(--space-12);--border-width:1px;--border-width-strong:1.5px;--ease-standard:cubic-bezier(0.2,0,0.1,1);--ease-out:cubic-bezier(0.16,1,0.3,1);--ease-in:cubic-bezier(0.4,0,1,1);--dur-fast:120ms;--dur-base:200ms;--dur-slow:320ms;--dur-slower:520ms;--z-base:0;--z-raised:10;--z-sticky:100;--z-overlay:1000;--z-modal:1100;--z-toast:1200}*,:after,:before{box-sizing:border-box}html{text-size-adjust:100%}body{margin:0;font-family:var(--font-body);font-weight:var(--weight-regular);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--text-body);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--text-strong);font-weight:var(--weight-semibold);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);margin:0 0 var(--space-4);text-wrap:balance}h1{font-size:var(--text-4xl);line-height:var(--leading-tight)}h1,h2{font-weight:var(--weight-bold);letter-spacing:var(--tracking-tighter)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-md)}p{margin:0 0 var(--space-4);text-wrap:pretty}a{color:var(--text-link);text-decoration:none}a:hover{color:var(--accent)}b,strong{font-weight:var(--weight-bold)}small{font-size:var(--text-sm)}hr{border:none;border-top:var(--border-width) solid var(--border);margin:var(--space-7) 0}code,kbd,pre,samp{font-family:var(--font-mono);font-size:.9em}::selection{background:var(--navy-800);color:var(--white)}img,svg,video{max-width:100%;display:block}.kp-overline{font-family:var(--type-overline-font);font-weight:var(--type-overline-weight);font-size:var(--type-overline-size);letter-spacing:var(--type-overline-tracking);text-transform:var(--type-overline-transform);color:var(--accent)}.kp-display{font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--text-6xl);line-height:var(--leading-tight);letter-spacing:var(--tracking-tighter);color:var(--text-strong)}.kp-lead{font-size:var(--text-md);line-height:var(--leading-relaxed);color:var(--text-muted)}.kp-container{width:100%;max-width:var(--container-xl);margin-inline:auto;padding-inline:var(--gutter)}.kp-accent-rule{width:56px;height:4px;border-radius:var(--radius-pill);background:var(--accent);border:none;margin:var(--space-4) 0}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--radius-sm)}h1{font-size:var(--text-2xl);letter-spacing:var(--tracking-tight);margin:0 0 var(--space-4)}h2{font-size:var(--text-xl);margin:0 0 var(--space-3)}h3{font-size:var(--text-lg);margin:0 0 var(--space-2)}p{margin:0 0 var(--space-3)}body{font-size:var(--text-sm)}.container{max-width:1040px;margin:0 auto;padding:0 var(--space-4)}.topbar{background:var(--color-surface);border-bottom:1px solid var(--border);position:-webkit-sticky;position:sticky;top:0;z-index:10}.topbar-inner{gap:var(--space-5);flex-wrap:wrap;row-gap:var(--space-2);padding:var(--space-2) 0;min-height:56px}.brand,.topbar-inner{display:flex;align-items:center}.brand{font-family:var(--font-display);font-weight:var(--weight-bold);color:var(--brand);letter-spacing:var(--tracking-tight);gap:var(--space-2);white-space:nowrap}.nav{display:flex;gap:var(--space-4);margin-left:auto;align-items:center;flex-wrap:wrap}.nav a{color:var(--text-muted);font-weight:var(--weight-medium)}.nav a:hover{color:var(--brand)}.nav a.active{color:var(--text-strong);font-weight:var(--weight-semibold)}@media (max-width:560px){.nav{width:100%;margin-left:0;gap:var(--space-3);font-size:var(--text-sm)}}.card{background:var(--color-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--space-4)}.stack{display:flex;flex-direction:column;gap:var(--space-3)}.row,.spread{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap}.spread{justify-content:space-between}.btn,button{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;border:1px solid var(--border-strong);background:var(--color-surface);color:var(--text-body);padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);transition:background .15s ease,border-color .15s ease,color .15s ease}.btn:hover,button:hover{background:var(--color-surface-sunken);color:var(--text-strong)}.btn:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;box-shadow:var(--focus-ring)}.btn-primary{background:var(--brand);color:var(--text-on-dark);border-color:var(--brand)}.btn-primary:hover{background:var(--brand-hover);color:var(--text-on-dark);border-color:var(--brand-hover)}.btn-danger{color:var(--accent);border-color:var(--red-200)}.btn-danger:hover{background:var(--accent-subtle);color:var(--accent-hover)}button:disabled{opacity:.55;cursor:default}input,select,textarea{font-family:var(--font-body);font-size:var(--text-sm);width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--text-body)}label{color:var(--text-muted);font-weight:var(--weight-semibold);text-transform:uppercase;display:block;margin-bottom:var(--space-1)}.badge,label{font-size:var(--text-xs);letter-spacing:var(--tracking-wide)}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:3px var(--space-3);border-radius:var(--radius-pill);font-weight:var(--weight-bold);white-space:nowrap}.badge-plomba{background:var(--danger);box-shadow:0 1px 2px rgba(220,43,43,.4)}.badge-changed,.badge-plomba{color:var(--white);font-size:var(--text-sm);padding:4px var(--space-3)}.badge-changed{background:var(--amber-600);box-shadow:0 1px 2px rgba(176,109,0,.35)}.badge-count{background:var(--color-surface);color:var(--text-muted);box-shadow:inset 0 0 0 1px var(--border-strong)}.badge-info{background:var(--info-bg);color:var(--info)}.badge-ok{background:var(--brand-subtle);color:var(--text-muted)}.badge-error{background:var(--warning-bg);color:var(--warning)}.badge-human{background:var(--navy-100);color:var(--navy-700)}.badge-paused{background:var(--gray-100);color:var(--gray-500)}.lv-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);border-bottom:1px solid var(--border)}.lv-row:last-child{border-bottom:none}.lv-row.alarm{background:linear-gradient(90deg,var(--red-100),var(--danger-bg) 45%,transparent 85%);box-shadow:inset 6px 0 0 var(--danger)}.lv-row.alarm .lv-title{color:var(--red-800)}.lv-row.alarm-orange{background:linear-gradient(90deg,var(--amber-100),var(--warning-bg) 45%,transparent 85%);box-shadow:inset 6px 0 0 var(--amber-600)}.lv-row.alarm-orange .lv-title{color:var(--amber-600)}.lv-title{font-family:var(--font-display);font-weight:var(--weight-semibold);color:var(--text-strong)}.lv-sub{font-size:var(--text-xs)}.lv-sub,.muted{color:var(--text-muted)}.mono,.small{font-size:var(--text-xs)}.mono{font-family:var(--font-mono)}.section-title{font-family:var(--font-display);font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--text-muted);margin:var(--space-5) 0 var(--space-2)}.diff-line{padding:2px var(--space-2);border-radius:var(--radius-xs);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--leading-normal);white-space:pre-wrap;word-break:break-word}.diff-add{background:var(--success-bg);color:var(--green-600)}.diff-del{background:var(--danger-bg);color:var(--red-700)}.alert{padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);font-size:var(--text-sm)}.alert-error{background:var(--danger-bg);color:var(--red-700)}.alert-info{background:var(--info-bg);color:var(--blue-600)}.alert-success{background:var(--success-bg);color:var(--green-600)}.center-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-4)}.auth-card{width:100%;max-width:400px}.autocomplete{position:relative}.autocomplete-panel{position:absolute;z-index:20;left:0;right:0;background:var(--color-surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);max-height:260px;overflow-y:auto;margin-top:var(--space-1)}.autocomplete-item{padding:var(--space-2) var(--space-3);cursor:pointer;font-size:var(--text-sm)}.autocomplete-item:hover{background:var(--brand-subtle)}