:root{font-family:Inter,Avenir,Helvetica,Arial,sans-serif;font-size:16px;line-height:24px;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;color-scheme:dark;--bg-primary: #080c14;--bg-secondary: #0c1119;--bg-panel: #10151f;--bg-surface: #151b28;--border-dim: #2a3446;--border: rgba(0, 212, 170, .15);--text-primary: #f6f6f6;--text-dim: #dde1e7;--text-muted: #8a94a6;--accent: #00d4aa;--accent-muted: rgba(0, 212, 170, .12);--ok: #3ddc84;--warn: #f5a623;--error: #ff5c5c;color:var(--text-primary);background-color:var(--bg-primary)}:root[data-theme=light]{color-scheme:light;--bg-primary: #f5f7fa;--bg-secondary: #ffffff;--bg-panel: #ffffff;--bg-surface: #eef1f6;--border-dim: #d8dee8;--border: rgba(0, 168, 140, .25);--text-primary: #10151f;--text-dim: #2a3446;--text-muted: #5b6472;--accent: #00a88c;--accent-muted: rgba(0, 168, 140, .1);--ok: #1e9e5a;--warn: #b3720a;--error: #d13c3c}input,button{border-radius:6px;border:1px solid var(--border-dim);padding:.6em 1.2em;font-size:1em;font-family:inherit;color:var(--text-primary);background-color:var(--bg-panel)}button{cursor:pointer;background-color:var(--accent);color:var(--bg-primary);font-weight:600;border:none}button:disabled{opacity:.6;cursor:default}.login-screen{height:100vh;display:flex;align-items:center;justify-content:center}.login-form{display:flex;flex-direction:column;gap:.75em;width:320px}.dev-quick-login{background-color:transparent;color:var(--text-muted);border:1px dashed var(--border-dim);font-weight:500;font-size:.85em}.dev-quick-login:hover:not(:disabled){color:var(--text-primary);border-color:var(--accent)}.login-form h1{margin:0;text-align:center;letter-spacing:.08em}.version-tag{margin:0;text-align:center;color:var(--accent);font-size:.75em;font-family:JetBrains Mono,monospace}.subtitle{text-align:center;color:var(--text-muted);margin:0 0 .5em}.error{color:var(--error);text-align:center}.usb-key-note{text-align:center;font-size:.8em;color:var(--text-muted)}.dashboard-shell{position:relative;min-height:100vh;background:var(--bg-primary)}.spin{animation:spin 1s linear infinite}*{scrollbar-width:thin;scrollbar-color:var(--border-dim) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-dim);border-radius:6px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--text-muted);background-clip:padding-box}::-webkit-scrollbar-corner{background:transparent}.app-card{margin-top:2em;background:var(--bg-secondary);border:1px solid var(--border-dim);border-radius:6px;padding:1.5em}.app-card-header{display:flex;align-items:center;gap:.75em;margin-bottom:1em;padding-bottom:.65em;border-bottom:1px solid var(--border-dim);min-width:0}.app-card-header h2{min-width:0;overflow-wrap:break-word}.app-card-header .app-badge{flex-shrink:0}.app-badge{background:#c9a227;color:#080c14;font-size:.75em;font-weight:700;letter-spacing:.05em;padding:.2em .6em;border-radius:2px}.demo-tag{color:var(--text-muted);font-size:.8em;border:1px solid var(--border-dim);border-radius:4px;padding:.1em .5em}.app-card-empty{color:var(--text-muted)}.military-stats{display:flex;gap:1.5em;margin-bottom:1em}.military-stats .stat{background:var(--bg-panel);border:1px solid var(--border-dim);border-radius:6px;padding:1em 1.5em;display:flex;flex-direction:column;align-items:center;min-width:120px}.military-stats .stat-value{font-size:1.6em;font-weight:700;color:var(--accent)}.military-stats .level-ruhig .stat-value{color:var(--ok)}.military-stats .level-erhoeht .stat-value{color:var(--warn)}.military-stats .level-kritisch .stat-value{color:var(--error)}.military-stats .stat-label{color:var(--text-muted);font-size:.85em}.military-summary{color:var(--text-dim)}.military-contacts{width:100%;border-collapse:collapse;margin:1em 0;font-size:.9em}.military-contacts th,.military-contacts td{text-align:left;padding:.4em .6em;border-bottom:1px solid var(--border-dim)}.military-timestamp{color:var(--text-muted);font-size:.8em}.military-app{background:#1a1d16;border-color:#3a3f2e}.military-app .app-badge{background:#4b5320;color:#e8e6d9}.military-app .demo-tag,.military-app .military-stats .stat{border-color:#3a3f2e}.military-app .military-stats .stat{background:#21241b}.military-app .military-stats .stat-value{color:#8a9a5b}.industry-line{margin-top:2em}.industry-line-count{margin-left:auto;color:var(--text-muted);font-size:.85em}.industry-machine-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1em}.industry-machine-card{background:var(--bg-panel);border:1px solid var(--border-dim);border-left:3px solid var(--ok);border-radius:6px;padding:.9em 1em}.industry-machine-card.industry-state-warning{border-left-color:var(--warn)}.industry-machine-card.industry-state-fault{border-left-color:var(--error)}.industry-machine-header{display:flex;align-items:baseline;justify-content:space-between;gap:.5em}.industry-machine-name{font-weight:600;font-size:.9em;color:var(--text-dim)}.industry-machine-badge{font-size:.7em;font-weight:700;letter-spacing:.04em;padding:.15em .5em;border-radius:4px;background:#3ddc841f;color:var(--ok);white-space:nowrap}.industry-machine-badge.industry-state-warning{background:#f5a62324;color:var(--warn)}.industry-machine-badge.industry-state-fault{background:#ff5c5c24;color:var(--error)}.industry-machine-type{color:var(--text-muted);font-size:.78em;margin:.2em 0 .8em}.industry-signal-grid{display:grid;grid-template-columns:1fr 1fr;gap:.4em .8em;margin-bottom:.7em}.industry-signal{display:flex;flex-direction:column;gap:.1em}.industry-signal-key{color:var(--text-muted);font-size:.72em;text-transform:capitalize}.industry-signal-value{font-family:JetBrains Mono,monospace;font-size:.85em;color:var(--text-dim)}.industry-signal-active .industry-signal-key,.industry-signal-active .industry-signal-value{color:var(--warn)}.industry-signal-unit{color:var(--text-muted);font-size:.85em}.industry-henri-badge{border-top:1px solid var(--border-dim);padding-top:.6em;color:var(--text-muted);font-size:.72em}.military-region-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1em;margin-bottom:1.2em}.military-region-card{background:#21241b;border:1px solid #3a3f2e;border-left:3px solid #8a9a5b;border-radius:6px;padding:.9em 1em}.military-region-card.level-ruhig{border-left-color:var(--ok)}.military-region-card.level-erhoeht{border-left-color:var(--warn)}.military-region-card.level-kritisch{border-left-color:var(--error)}.military-region-empty{display:flex;flex-direction:column;gap:.3em;opacity:.7}.military-region-header{display:flex;align-items:baseline;justify-content:space-between;gap:.5em}.military-region-name{font-weight:600;font-size:.9em;color:#e8e6d9}.military-region-escalated{font-size:.65em;font-weight:700;letter-spacing:.05em;color:var(--error);background:#ff5c5c24;padding:.15em .5em;border-radius:4px;white-space:nowrap}.military-region-level{font-size:1.2em;font-weight:700;color:#8a9a5b;margin:.2em 0}.level-ruhig .military-region-level{color:var(--ok)}.level-erhoeht .military-region-level{color:var(--warn)}.level-kritisch .military-region-level{color:var(--error)}.military-region-stats{display:flex;gap:1em;color:#b5bcae;font-size:.8em;margin-bottom:.5em}.military-region-top{color:#8a94a6;font-size:.78em;margin-bottom:.4em}.military-app .military-stats .level-ruhig .stat-value{color:#7a9b57}.military-app .military-stats .level-erhoeht .stat-value{color:#c9a668}.military-app .military-stats .level-kritisch .stat-value{color:#c8102e}.military-app .military-contacts th,.military-app .military-contacts td{border-bottom-color:#3a3f2e}.chat-typing{display:inline-flex;gap:4px;align-items:center;padding:.2em 0}.chat-typing span{width:6px;height:6px;border-radius:50%;background:var(--text-muted);animation:chat-typing-bounce 1.2s ease-in-out infinite}.chat-typing span:nth-child(2){animation-delay:.15s}.chat-typing span:nth-child(3){animation-delay:.3s}@keyframes chat-typing-bounce{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.chat-stream-caret{display:inline-block;width:2px;height:1em;margin-left:2px;vertical-align:text-bottom;background:var(--accent);animation:chat-caret-blink 1s steps(2,start) infinite}@keyframes chat-caret-blink{to{visibility:hidden}}:where(a,button,input,select,textarea,summary,[tabindex]:not([tabindex="-1"]),[role=button],[role=tab]):focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}aside a:focus-visible,.industry-machine-card:focus-visible,.app-card:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}:where(button,input,select,textarea):disabled:focus-visible{outline-color:var(--text-muted)}@media(forced-colors:active){:where(a,button,input,select,textarea,summary,[tabindex]:not([tabindex="-1"]),[role=button],[role=tab]):focus-visible{outline:3px solid Highlight;outline-offset:2px}}.skip-to-content{position:absolute;left:-9999px;top:0;z-index:100;padding:10px 16px;background:var(--bg-panel);color:var(--text-primary);border:1px solid var(--accent);border-radius:0 0 4px;font-size:14px;text-decoration:none}.skip-to-content:focus{left:0}.\!container{width:100%!important}.container{width:100%}@media(min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media(min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media(min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media(min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media(min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.right-0{right:0}.top-5{top:1.25rem}.top-8{top:2rem}.z-40{z-index:40}.z-50{z-index:50}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.\!block{display:block!important}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.\!hidden{display:none!important}.hidden{display:none}.h-0\.5{height:.125rem}.h-14{height:3.5rem}.h-2{height:.5rem}.h-8{height:2rem}.h-full{height:100%}.h-screen{height:100vh}.min-h-0{min-height:0px}.w-2{width:.5rem}.w-8{width:2rem}.w-full{width:100%}.min-w-0{min-width:0px}.max-w-\[150px\]{max-width:150px}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.flex-shrink-0,.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))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-amber-700\/50{border-color:#b4530980}.border-emerald-700\/50{border-color:#04785780}.border-orange-700\/50{border-color:#c2410c80}.border-zinc-700\/50{border-color:#3f3f4680}.bg-amber-400{--tw-bg-opacity: 1;background-color:rgb(251 191 36 / var(--tw-bg-opacity, 1))}.bg-amber-950\/80{background-color:#451a03cc}.bg-emerald-400{--tw-bg-opacity: 1;background-color:rgb(52 211 153 / var(--tw-bg-opacity, 1))}.bg-emerald-950\/80{background-color:#022c22cc}.bg-orange-400{--tw-bg-opacity: 1;background-color:rgb(251 146 60 / var(--tw-bg-opacity, 1))}.bg-orange-950\/80{background-color:#431407cc}.bg-zinc-500{--tw-bg-opacity: 1;background-color:rgb(113 113 122 / var(--tw-bg-opacity, 1))}.bg-zinc-900\/90{background-color:#18181be6}.p-1{padding:.25rem}.p-3{padding:.75rem}.p-4{padding:1rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pl-3{padding-left:.75rem}.pr-1{padding-right:.25rem}.pr-3{padding-right:.75rem}.pr-4{padding-right:1rem}.pt-1{padding-top:.25rem}.text-left{text-align:left}.text-center{text-align:center}.align-top{vertical-align:top}.text-2xl{font-size:1.5rem;line-height:2rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.tracking-wider{letter-spacing:.05em}.text-amber-400\/70{color:#fbbf24b3}.text-white\/50{color:#ffffff80}.text-white\/60{color:#fff9}.text-white\/90{color:#ffffffe6}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.shadow-\[0_0_6px_\#34d399\]{--tw-shadow: 0 0 6px #34d399;--tw-shadow-colored: 0 0 6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_0_6px_\#fb923c\]{--tw-shadow: 0 0 6px #fb923c;--tw-shadow-colored: 0 0 6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_0_6px_\#fbbf24\]{--tw-shadow: 0 0 6px #fbbf24;--tw-shadow-colored: 0 0 6px 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{--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(3px + 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)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.\!filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)!important}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-700{transition-duration:.7s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}
