*{box-sizing:border-box}body{color:#e8eaed;background:#0f1115;margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:14px}a{color:#66c2ff;text-decoration:none}a:hover{text-decoration:underline}.nav{background:#181b22;border-bottom:1px solid #2a2e37;align-items:center;gap:24px;padding:16px 24px;display:flex}.nav h1{color:#fff;margin:0;font-size:16px;font-weight:600}.nav a{color:#c8ccd1;border-radius:6px;padding:6px 10px}.nav a.active{color:#fff;background:#2a2e37}.nav .spacer{flex:1}.page{max-width:1200px;margin:0 auto;padding:24px}.page h2{margin:0 0 16px;font-size:22px}.page-header{align-items:center;gap:16px;margin-bottom:16px;display:flex}.page-header .spacer{flex:1}table{border-collapse:collapse;background:#14171d;border-radius:8px;width:100%;overflow:hidden}th,td{text-align:left;border-bottom:1px solid #2a2e37;padding:10px 12px}th{color:#a8b0bb;text-transform:uppercase;letter-spacing:.04em;background:#1d2129;font-size:12px;font-weight:600}tr:last-child td{border-bottom:none}tr:hover{background:#1a1e25}button,.btn{color:#e8eaed;cursor:pointer;font:inherit;background:#1d2129;border:1px solid #2a2e37;border-radius:6px;padding:8px 14px;display:inline-block}button:hover,.btn:hover{background:#2a2e37}button.primary,.btn.primary{color:#fff;background:#2c5f9e;border-color:#2c5f9e}button.primary:hover{background:#3373b8}button.danger{color:#fff;background:#6e2424;border-color:#6e2424}button:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{color:#e8eaed;width:100%;font:inherit;background:#14171d;border:1px solid #2a2e37;border-radius:6px;padding:8px 10px}input:focus,select:focus{outline-offset:-1px;border-color:#2c5f9e;outline:2px solid #2c5f9e}label{margin-bottom:16px;display:block}label span{color:#a8b0bb;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;font-size:12px;display:block}.card{background:#14171d;border:1px solid #2a2e37;border-radius:8px;margin-bottom:16px;padding:20px}.badge{border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.badge.online{color:#5ec97e;background:#1d3a25}.badge.degraded{color:#f4c265;background:#4a3a1a}.badge.offline{color:#ef7878;background:#3d1f1f}.badge.pending{color:#a8b0bb;background:#2a2e37}.badge.low{color:#5ec97e;background:#1d3a25}.badge.medium{color:#f4c265;background:#4a3a1a}.badge.high{color:#f0976a;background:#4a2818}.badge.critical{color:#ef7878;background:#3d1f1f}.empty{text-align:center;color:#7a8290;padding:60px 20px}.login{background:#14171d;border:1px solid #2a2e37;border-radius:12px;max-width:360px;margin:80px auto;padding:32px}.login h2{margin-top:0}.error{color:#ef7878;background:#2d1818;border-radius:6px;margin:12px 0;padding:12px}.muted{color:#7a8290}.linklike{color:#6ea8fe;cursor:pointer;font:inherit;background:0 0;border:none;padding:0}.linklike:hover{text-decoration:underline}.linklike:disabled{color:#7a8290;cursor:default}.modal-backdrop{z-index:100;background:#000000bf;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:#14171d;border:1px solid #2a2e37;border-radius:12px;flex-direction:column;max-width:90vw;max-height:90vh;display:flex;overflow:hidden}.modal-header{color:#a8b0bb;border-bottom:1px solid #2a2e37;justify-content:space-between;align-items:center;padding:12px 16px;font-size:14px;display:flex}.modal-body{justify-content:center;align-items:center;padding:12px;display:flex;overflow:auto}.modal-body img,.modal-body video{max-width:100%;max-height:80vh;display:block}.thumb-btn{cursor:pointer;background:0 0;border:1px solid #2a2e37;border-radius:4px;justify-content:center;align-items:center;width:96px;height:64px;padding:0;display:inline-flex;overflow:hidden}.thumb-btn:hover{border-color:#6ea8fe}.thumb-btn img{object-fit:cover;width:100%;height:100%;display:block}.thumb-placeholder{color:#7a8290;font-size:18px}.row-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.row-actions .linklike{white-space:nowrap;font-size:12px}.teach-modal{width:540px;max-width:90vw}.teach-body{flex-direction:column;align-items:stretch;gap:12px;padding:16px}.teach-body textarea{color:#e4e7ec;font:inherit;resize:vertical;background:#0e1116;border:1px solid #2a2e37;border-radius:6px;padding:10px}.teach-body details{margin:4px 0}.teach-body details pre{white-space:pre-wrap;background:#0e1116;border:1px solid #2a2e37;border-radius:4px;max-height:160px;padding:8px;font-size:12px;overflow:auto}.modal-actions{justify-content:flex-end;gap:8px;padding-top:8px;display:flex}.small{font-size:12px}button.primary{color:#fff;cursor:pointer;font:inherit;background:#2c5cff;border:none;border-radius:6px;padding:8px 14px}button.primary:disabled{color:#7a8290;cursor:default;background:#2a2e37}.badge.ok{color:#5ec97e;background:#1d3a25}.badge.acknowledged{color:#f4c265;background:#4a3a1a}.badge.escalated{color:#ef7878;background:#3d1f1f}.bindings-editor{background:#0e1116;border:1px solid #2a2e37;border-radius:8px;margin:8px 0;padding:16px}.bindings-cols{grid-template-columns:1fr 1fr;gap:24px;display:grid}@media (width<=760px){.bindings-cols{grid-template-columns:1fr}}.bindings-editor h4{color:#a8b0bb;margin:0 0 8px;font-size:13px;font-weight:600}.checkbox-row{cursor:pointer;align-items:center;gap:8px;padding:4px 0;display:flex}.checkbox-row span{font-size:14px}.bindings-actions{border-top:1px solid #2a2e37;align-items:center;gap:12px;margin-top:16px;padding-top:12px;display:flex}.recipients-table th,.recipients-table td{vertical-align:middle;white-space:nowrap}.recipients-table th:first-child,.recipients-table td:first-child{min-width:140px}.recipients-table th:nth-child(2),.recipients-table td:nth-child(2){min-width:120px}.recipients-table th:nth-child(3),.recipients-table td:nth-child(3){text-align:center;width:60px}.recipients-table th:nth-child(4),.recipients-table td:nth-child(4),.recipients-table th:nth-child(5),.recipients-table td:nth-child(5){width:140px}.recipients-table th:nth-child(6),.recipients-table td:nth-child(6){width:1px}.add-recipient{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.add-recipient select,.recipients-table select{color:#e4e7ec;font:inherit;background:#0e1116;border:1px solid #2a2e37;border-radius:6px;padding:6px 8px}.row-actions-tight{align-items:center;gap:8px;display:flex}
