:root{--paper: #0c1114;--paper-raised: #141b20;--paper-sunken: #0a0e11;--ink: #e9edec;--ink-soft: #9fadb2;--ink-faint: #64737a;--line: #26313a;--line-strong: #37444d;--teal: #5fd1c4;--teal-soft: #132321;--teal-rgb: 95, 209, 196;--amber: #e3a24c;--amber-soft: #2a2114;--amber-rgb: 227, 162, 76;--red: #e2695c;--red-soft: #2c1917;--red-rgb: 226, 105, 92;--focus: #5fd1c4;--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 8px 28px rgba(0, 0, 0, .35);--radius: 10px}[data-theme=light]{--paper: #f3f1ea;--paper-raised: #ffffff;--paper-sunken: #eae7dd;--ink: #12181c;--ink-soft: #4b565c;--ink-faint: #7c868b;--line: #d9d4c6;--line-strong: #c7c0ac;--teal: #1b6e67;--teal-soft: #e4eeec;--teal-rgb: 27, 110, 103;--amber: #b36a16;--amber-soft: #f4e7d4;--amber-rgb: 179, 106, 22;--red: #a33b2f;--red-soft: #f3dcd6;--red-rgb: 163, 59, 47;--focus: #1b6e67;--shadow: 0 1px 2px rgba(18, 24, 28, .06), 0 6px 20px rgba(18, 24, 28, .05)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:IBM Plex Sans,ui-sans-serif,system-ui,sans-serif;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:Barlow Semi Condensed,ui-sans-serif,system-ui,sans-serif;font-weight:700;margin:0;text-wrap:balance}code,.mono{font-family:IBM Plex Mono,ui-monospace,monospace;font-variant-numeric:tabular-nums}a{color:var(--teal)}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:4px}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}::selection{background:var(--teal);color:var(--paper-raised)}.app-shell{display:grid;grid-template-columns:220px 1fr;min-height:100vh}@media (max-width: 860px){.app-shell{grid-template-columns:1fr}}.sidebar{background:var(--paper-sunken);border-right:1px solid var(--line);padding:1.4rem 1rem;display:flex;flex-direction:column;gap:1.6rem}.sidebar-brand{display:flex;align-items:center;gap:.6rem;padding:0 .3rem}.sidebar-brand .dot{width:9px;height:9px;border-radius:50%;background:var(--red);box-shadow:0 0 0 3px var(--red-soft)}.sidebar-brand span{font-family:Barlow Semi Condensed,sans-serif;font-weight:700;font-size:1.05rem;letter-spacing:.01em}.sidebar nav{display:flex;flex-direction:column;gap:.15rem}.sidebar nav a{display:flex;align-items:center;gap:.6rem;padding:.55rem .7rem;border-radius:8px;color:var(--ink-soft);text-decoration:none;font-size:.92rem}.sidebar nav a:hover{background:var(--paper-raised);color:var(--ink)}.sidebar nav a.active{background:var(--teal-soft);color:var(--teal);font-weight:600}.sidebar-footer{margin-top:auto;display:flex;flex-direction:column;gap:.6rem;font-size:.82rem;color:var(--ink-soft)}.main{padding:1.6rem clamp(1rem,3vw,2.4rem) 3rem;min-width:0}.page-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1.4rem;flex-wrap:wrap}.page-head h1{font-size:1.7rem}.page-head .sub{color:var(--ink-soft);font-size:.92rem}.card{background:var(--paper-raised);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.btn{display:inline-flex;align-items:center;gap:.4em;border:1px solid var(--line-strong);background:var(--paper-raised);color:var(--ink);padding:.5rem .9rem;border-radius:8px;font-size:.88rem;font-weight:600;transition:border-color .15s ease,background .15s ease}.btn:hover{border-color:var(--teal)}.btn-primary{background:var(--teal);border-color:var(--teal);color:#06201d}.btn-primary:hover{filter:brightness(1.08)}.btn-danger{border-color:var(--red);color:var(--red)}.btn-ghost{border-color:transparent;background:transparent}.btn:disabled{opacity:.5;cursor:not-allowed}.pill{display:inline-flex;align-items:center;gap:.35em;font-family:IBM Plex Mono,monospace;font-size:.7rem;letter-spacing:.05em;text-transform:uppercase;padding:.22em .6em;border-radius:99px;font-weight:600;white-space:nowrap}.pill-critical{background:var(--red-soft);color:var(--red)}.pill-elevated{background:var(--amber-soft);color:var(--amber)}.pill-info{background:var(--teal-soft);color:var(--teal)}.pill-neutral{background:var(--paper-sunken);color:var(--ink-soft);border:1px solid var(--line)}.priority-stripe{width:4px;border-radius:4px;align-self:stretch}.priority-stripe.CRITICAL{background:var(--red)}.priority-stripe.ELEVATED{background:var(--amber)}.priority-stripe.INFO{background:var(--teal)}@keyframes alarm-glow{0%,to{box-shadow:var(--shadow)}50%{box-shadow:0 0 0 3px rgba(var(--flash-rgb),.4),0 0 20px 3px rgba(var(--flash-rgb),.3),var(--shadow)}}@keyframes stripe-blink{0%,to{opacity:1}50%{opacity:.2}}.alarm-card.is-new{animation:alarm-glow 1s ease-in-out 4}.alarm-card.is-new .priority-stripe{animation:stripe-blink 1s ease-in-out 4}@keyframes alarm-glow-critical{0%,to{box-shadow:var(--shadow)}50%{box-shadow:0 0 0 5px rgba(var(--flash-rgb),.55),0 0 34px 6px rgba(var(--flash-rgb),.45),var(--shadow)}}@keyframes stripe-blink-critical{0%,to{opacity:1}50%{opacity:.12}}.alarm-card.critical-pending{animation:alarm-glow-critical .9s ease-in-out infinite}.alarm-card.critical-pending .priority-stripe{animation:stripe-blink-critical .9s ease-in-out infinite}@media (prefers-reduced-motion: reduce){.alarm-card.is-new,.alarm-card.is-new .priority-stripe,.alarm-card.critical-pending,.alarm-card.critical-pending .priority-stripe{animation:none}}.contact-chip{position:relative;display:inline-flex;text-decoration:none}.contact-tooltip{position:absolute;bottom:calc(100% + 8px);left:0;z-index:20;width:max-content;max-width:280px;background:var(--paper-raised);border:1px solid var(--line-strong);border-radius:8px;padding:.6rem .8rem;font-size:.8rem;line-height:1.45;color:var(--ink);box-shadow:var(--shadow);opacity:0;transform:translateY(4px);pointer-events:none;transition:opacity .12s ease,transform .12s ease}.contact-chip:hover .contact-tooltip,.contact-chip:focus-visible .contact-tooltip{opacity:1;transform:translateY(0)}.contact-tooltip .step{display:block;padding:.15rem 0}.contact-tooltip .step-current{color:var(--teal);font-weight:600}input[type=text],input[type=email],input[type=password],input[type=number],select,textarea{background:var(--paper-sunken);border:1px solid var(--line-strong);border-radius:8px;padding:.55rem .7rem;color:var(--ink);width:100%}label{font-size:.85rem;color:var(--ink-soft);display:block;margin-bottom:.3rem}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius)}table{border-collapse:collapse;width:100%;min-width:560px;font-size:.88rem}thead th{text-align:left;font-family:IBM Plex Mono,monospace;font-size:.7rem;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-soft);background:var(--paper-sunken);padding:.65rem .8rem;border-bottom:1px solid var(--line)}tbody td{padding:.65rem .8rem;border-bottom:1px solid var(--line);vertical-align:top}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--paper-sunken)}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.9rem;margin-bottom:1.6rem}.kpi{padding:1rem 1.1rem}.kpi .label{font-family:IBM Plex Mono,monospace;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft)}.kpi .value{font-family:Barlow Semi Condensed,sans-serif;font-size:2rem;font-weight:700;margin-top:.2rem}.empty-state{text-align:center;padding:3rem 1rem;color:var(--ink-soft)}
