*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;background:#0d1117;color:#e6edf3;line-height:1.5;min-height:100vh}a{color:#58a6ff;text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto;display:block}button{font-family:inherit;font-size:inherit;cursor:pointer;border:none;background:none}ul,ol{list-style:none}input,textarea,select{font-family:inherit;font-size:inherit}table{border-collapse:collapse;width:100%}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.25;color:#e6edf3}h1{font-size:1.5rem}h2{font-size:1.25rem}h3{font-size:1rem}h4{font-size:.875rem}.text-primary{color:#e6edf3}.text-secondary{color:#8b949e}.text-tertiary{color:#6e7681}.text-sm{font-size:.75rem}.text-xs{font-size:.65rem}.font-mono{font-family:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace}.app-header{position:sticky;top:0;z-index:100;background:#161b22;border-bottom:1px solid #30363d}.header__inner{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:1rem;max-width:1400px;margin:0 auto;padding:.75rem 1rem}.header__logo{font-size:1.125rem;font-weight:700;color:#e6edf3;white-space:nowrap}.header__logo a{color:inherit;text-decoration:none}.header__nav{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:.25rem}@media(min-width: 768px){.header__nav{gap:.5rem}}.nav-link{padding:.5rem .75rem;border-radius:6px;color:#8b949e;font-size:.8rem;font-weight:500;transition:all .15s ease;text-decoration:none}.nav-link:hover{background:#30363d;color:#e6edf3;text-decoration:none}.nav-link.active{background:#238636;color:#fff}@media(min-width: 768px){.nav-link{padding:.5rem 1rem;font-size:.875rem}}.header__actions{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;gap:.5rem}.tab-bar{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:.25rem;padding:.5rem 1rem;background:#161b22;border-bottom:1px solid #30363d;overflow-x:auto;scrollbar-width:none}.tab-bar::-webkit-scrollbar{display:none}.tab-btn{padding:.4rem .75rem;background:#21262d;border:1px solid #30363d;border-radius:6px;color:#8b949e;font-size:.75rem;font-weight:500;white-space:nowrap;transition:all .15s ease}.tab-btn:hover{background:#30363d;color:#e6edf3}.tab-btn.active{background:#238636;border-color:#238636;color:#fff}.mode-toggle{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:.25rem;padding:.5rem 1rem;background:#161b22;border-bottom:1px solid #30363d}.mode-btn{padding:.4rem .75rem;background:#21262d;border:1px solid #30363d;border-radius:6px;color:#8b949e;font-size:.75rem;cursor:pointer;transition:all .15s ease}.mode-btn:hover{background:#30363d;color:#e6edf3}.mode-btn.active{background:#238636;border-color:#238636;color:#fff}.feed-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:1px;background:#30363d;min-height:0}@media(max-width: 900px){.feed-grid{grid-template-columns:1fr}}@media(min-width: 901px)and (max-width: 1200px){.feed-grid{grid-template-columns:repeat(2, 1fr)}}.news-grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:1px;background:#30363d}@media(max-width: 768px){.news-grid{grid-template-columns:1fr}}@media(min-width: 769px)and (max-width: 1024px){.news-grid{grid-template-columns:repeat(2, 1fr)}}.feed-column,.news-column{background:#0d1117;min-width:0;overflow-y:auto;max-height:calc(100vh - 120px)}.section-header{position:sticky;top:0;z-index:10;display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#161b22;border-bottom:1px solid #21262d;font-size:.875rem;font-weight:600}.section-header .icon{width:16px;height:16px;opacity:.7}.channel-card{background:#161b22;border:1px solid #30363d;border-radius:10px;display:flex;flex-direction:column;height:300px;overflow:hidden}.channel-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem;border-bottom:2px solid #30363d}.channel-info{flex:1}.channel-info h3{font-size:.85rem;font-weight:600;margin:0}.channel-info .channel-desc{font-size:.6rem;color:#6e7681}.channel-count{padding:.15rem .5rem;border-radius:8px;font-size:.65rem;font-weight:600;color:#fff}.messages-container{flex:1;overflow-y:auto;padding:.4rem;scrollbar-width:thin}.channel-footer{padding:.4rem .75rem;border-top:1px solid #21262d;display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:.75rem}.channel-footer a{font-size:.65rem;color:#58a6ff;text-decoration:none}.channel-footer a:hover{text-decoration:underline}.feed-item{padding:.75rem 1rem;border-bottom:1px solid #21262d;transition:background .15s ease}.feed-item:hover{background:hsla(0,0%,100%,.02)}.feed-item:last-child{border-bottom:none}.feed-item__header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.25rem}.feed-item__meta{font-size:.65rem;color:#6e7681}.feed-item__title{font-size:.8rem;font-weight:500;color:#e6edf3;margin-bottom:.25rem}.feed-item__title a{color:inherit;text-decoration:none}.feed-item__title a:hover{color:#58a6ff}.feed-item__desc{font-size:.7rem;color:#8b949e;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.message-item{padding:.5rem .6rem;background:#21262d;border-radius:4px;margin-bottom:.4rem;border-left:2px solid #30363d;cursor:pointer}.message-item:hover{background:hsla(0,0%,100%,.05)}.message-item.priority-urgent{border-left-color:#da3633;background:rgba(218,54,51,.08)}.message-item.priority-high{border-left-color:#f85149;background:rgba(248,81,73,.08)}.message-item.priority-default{border-left-color:#d29922}.message-item.priority-low{border-left-color:#58a6ff}.message-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:0;margin-bottom:.15rem}.message-topic,.message-time{font-size:.55rem;color:#6e7681}.message-title{font-size:.7rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-body{font-size:.6rem;color:#8b949e;margin-top:.15rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.empty-state{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:2rem;color:#6e7681;text-align:center}.empty-state--compact{padding:1rem}.empty-state .icon{width:32px;height:32px;opacity:.5}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.5rem 1rem;border-radius:6px;font-size:.8rem;font-weight:500;transition:all .15s ease;cursor:pointer}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background:#238636;color:#fff;border:1px solid #238636}.btn--primary:hover:not(:disabled){filter:brightness(1.1)}.btn--secondary{background:#21262d;color:#e6edf3;border:1px solid #30363d}.btn--secondary:hover:not(:disabled){background:#30363d}.btn--ghost{background:rgba(0,0,0,0);color:#8b949e;border:1px solid rgba(0,0,0,0)}.btn--ghost:hover:not(:disabled){background:#30363d;color:#e6edf3}.btn--icon{padding:.5rem;width:32px;height:32px}.refresh-btn{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:.4rem;padding:.4rem .75rem;background:#21262d;border:1px solid #30363d;border-radius:6px;color:#e6edf3;font-size:.75rem;cursor:pointer}.refresh-btn:hover:not(:disabled){background:#30363d}.refresh-btn .spinning{animation:spin 1s linear infinite}.ntfy-link{padding:.4rem .75rem;background:#238636;color:#fff;text-decoration:none;border-radius:6px;font-size:.75rem}.ntfy-link:hover{filter:brightness(1.1);text-decoration:none}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.matrix-section,.channels-table-section{margin-bottom:1.5rem}.matrix-section h3,.channels-table-section h3{font-size:.9rem;font-weight:600;margin-bottom:.75rem;color:#8b949e}details.matrix-section,details.channels-table-section{background:#161b22;border:1px solid #30363d;border-radius:8px;margin-bottom:1rem}details.matrix-section summary,details.channels-table-section summary{padding:.75rem 1rem;cursor:pointer;font-size:.85rem;font-weight:600;color:#8b949e;user-select:none}details.matrix-section summary:hover,details.channels-table-section summary:hover{color:#e6edf3}details.matrix-section summary::marker,details.channels-table-section summary::marker{color:#6e7681}details.matrix-section .matrix-table,details.matrix-section .channels-table,details.channels-table-section .matrix-table,details.channels-table-section .channels-table{border:none;border-radius:0;border-top:1px solid #30363d}.matrix-table,.channels-table{width:100%;border-collapse:collapse;font-size:.75rem;background:#161b22;border:1px solid #30363d;border-radius:8px;overflow:hidden}.matrix-table th,.matrix-table td,.channels-table th,.channels-table td{padding:.6rem .75rem;text-align:left;border-bottom:1px solid #21262d}.matrix-table th,.channels-table th{background:#21262d;font-weight:600;color:#8b949e;font-size:.7rem}.matrix-table tbody tr:hover,.channels-table tbody tr:hover{background:hsla(0,0%,100%,.03)}.matrix-table tbody tr:last-child td,.channels-table tbody tr:last-child td{border-bottom:none}.matrix-table th:nth-child(2){color:#d29922}.matrix-table th:nth-child(3){color:#58a6ff}.matrix-table th:nth-child(4){color:#f85149}.service-badge,.channel-badge{display:inline-block;padding:.2rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;color:#fff}.cell-content{display:flex;flex-direction:column;gap:.15rem}.cell-topic{font-size:.65rem;color:#58a6ff;font-family:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace}.cell-desc{font-size:.65rem;color:#6e7681}.cell-empty{color:#6e7681;font-size:.7rem}.desc-cell{color:#6e7681;font-size:.7rem}.channels-grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:.75rem;padding:.5rem}@media(max-width: 1200px){.channels-grid{grid-template-columns:repeat(3, 1fr)}}@media(max-width: 900px){.channels-grid{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 600px){.channels-grid{grid-template-columns:1fr}}.loading-state{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:.4rem;padding:.5rem}.skeleton,.skeleton-row,.skeleton-msg{background:linear-gradient(90deg, #21262d 25%, #30363d 50%, #21262d 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px}.skeleton-msg{height:50px}.skeleton-row{height:60px}@keyframes shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}.error-banner{padding:.5rem .75rem;background:rgba(248,81,73,.1);border:1px solid rgba(248,81,73,.4);border-radius:6px;color:#f85149;margin:1rem;font-size:.75rem}.time-group{padding:.5rem 1rem;background:#21262d;font-size:.7rem;font-weight:600;color:#6e7681;text-transform:uppercase;letter-spacing:.05em}.landing{min-height:100vh;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:0}.landing__hero{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;padding:4rem 2rem;text-align:center;background:linear-gradient(135deg, #161b22 0%, #0d1117 100%);border-bottom:1px solid #30363d}.landing__title{font-size:2.5rem;font-weight:700;background:linear-gradient(135deg, #e6edf3 0%, #58a6ff 100%);-webkit-background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0);background-clip:text}.landing__subtitle{font-size:1rem;color:#8b949e;max-width:500px}.landing__nav{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:1rem}.landing__link{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:1.5rem 2rem;background:#161b22;border:1px solid #30363d;border-radius:12px;color:#e6edf3;text-decoration:none;transition:all .2s ease;min-width:200px}.landing__link:hover{background:#21262d;border-color:#58a6ff;transform:translateY(-2px);text-decoration:none}.landing__link .icon{font-size:2rem}.landing__link span{font-size:.9rem;font-weight:600}.landing__link .link-desc{font-size:.65rem;font-weight:400;color:#6e7681;text-align:center}.landing__footer{margin-top:auto;padding:1rem;text-align:center;border-top:1px solid #21262d;color:#6e7681;font-size:.75rem}.landing__footer a{color:#58a6ff}.appsfeed{min-height:100vh;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:0}.appsfeed__header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:.5rem;background:#161b22;padding:0 1rem}.appsfeed__header .tab-bar{flex:1;border-bottom:none;overflow-x:auto;-webkit-overflow-scrolling:touch}.appsfeed__header .tab-bar::-webkit-scrollbar{height:4px}.appsfeed__header .tab-bar::-webkit-scrollbar-thumb{background:#30363d;border-radius:2px}.appsfeed__content{flex:1;padding:1rem}.feed-item{display:flex;flex-direction:row;justify-content:flex-start;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid #21262d}.feed-item:hover{background:hsla(0,0%,100%,.02)}.feed-item .feed-icon{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#21262d;border-radius:50%;font-size:1rem}.feed-item .feed-content{flex:1;min-width:0}.feed-item .feed-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.25rem}.feed-item .feed-source{font-size:.65rem;font-weight:600;color:#fff;padding:.125rem .375rem;border-radius:3px}.feed-item .feed-time{font-size:.65rem;color:#6e7681}.feed-item .feed-title{font-size:.8rem;font-weight:500;color:#e6edf3;text-decoration:none;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feed-item .feed-title:hover{color:#58a6ff}.feed-item .feed-desc{font-size:.7rem;color:#6e7681;margin-top:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.config-notice{background:#161b22;border:1px solid #30363d;border-radius:12px;padding:2rem;text-align:center;max-width:500px;margin:2rem auto}.config-notice h3{font-size:1.25rem;margin-bottom:1rem;color:#e6edf3}.config-notice p{font-size:.875rem;color:#8b949e;margin-bottom:1rem}.config-notice code{background:#21262d;padding:.125rem .375rem;border-radius:4px;font-size:.75rem}.config-notice ul{text-align:left;font-size:.8rem;color:#8b949e;margin:1rem 0;padding-left:1.5rem}.config-notice ul li{margin-bottom:.5rem}.config-info{padding:1rem;border-top:1px solid #21262d}.config-info details{background:#161b22;border:1px solid #30363d;border-radius:8px}.config-info details summary{padding:.75rem 1rem;cursor:pointer;font-size:.875rem;font-weight:600;color:#8b949e}.config-info details summary:hover{color:#e6edf3}.feeds-reference{padding:1rem}.feeds-table{width:100%;border-collapse:collapse;font-size:.75rem}.feeds-table th,.feeds-table td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid #21262d}.feeds-table th{color:#6e7681;font-weight:500;font-size:.65rem;text-transform:uppercase}.feeds-table code{background:#21262d;padding:.125rem .375rem;border-radius:3px;font-size:.65rem;word-break:break-all}.app-badge{display:inline-block;padding:.125rem .5rem;border-radius:4px;font-size:.65rem;font-weight:600;color:#fff}.config-note{margin-top:1rem;font-size:.75rem;color:#6e7681}.config-note code{background:#21262d;padding:.125rem .375rem;border-radius:3px}.newsfeed{min-height:100vh;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:0}.newsfeed__header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:.5rem;background:#161b22}.newsfeed__header .tab-bar{flex:1;border-bottom:none}.newsfeed__content{flex:1}.news-row{display:flex;flex-direction:row;justify-content:flex-start;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid #21262d}.news-row:hover{background:hsla(0,0%,100%,.02)}.news-row .news-thumb{width:80px;height:80px;border-radius:6px;background:#21262d;flex-shrink:0;overflow:hidden}.news-row .news-thumb img{width:100%;height:100%;object-fit:cover}.news-row .news-content{flex:1;min-width:0}.news-row .news-source{font-size:.65rem;color:#6e7681;margin-bottom:.25rem}.news-row .news-title{font-size:.85rem;font-weight:500;margin-bottom:.25rem}.news-row .news-title a{color:#e6edf3;text-decoration:none}.news-row .news-title a:hover{color:#58a6ff}.news-row .news-desc{font-size:.7rem;color:#8b949e;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:.25rem}.news-row .news-time{font-size:.6rem;color:#6e7681}.news-column .news-row .news-thumb{width:60px;height:60px}.news-column .news-row .news-title{font-size:.75rem;-webkit-line-clamp:2}.news-column .news-row .news-desc{display:none}.section-header.hn{background:linear-gradient(135deg, #ff6600 0%, #ff8533 100%);color:#fff}.section-header.hn .icon{opacity:1}.cloudfeed{min-height:100vh;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:0;padding-bottom:2rem}.cloudfeed.central-alerts{background:linear-gradient(180deg, #0d1117 0%, rgb(9.3166666667, 12.1833333333, 16.4833333333) 100%)}.dashboard-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding:1rem 1.5rem;background:#161b22;border-bottom:1px solid #30363d}.dashboard-title{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:.75rem}.dashboard-title h1{font-size:1.25rem;font-weight:600;margin:0;color:#e6edf3}.live-indicator{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:.4rem;padding:.25rem .6rem;background:rgba(34,197,94,.15);border:1px solid rgba(34,197,94,.3);border-radius:4px;font-size:.65rem;font-weight:700;letter-spacing:.05em;color:#22c55e}.live-indicator .pulse{width:8px;height:8px;background:#22c55e;border-radius:50%;animation:pulse 2s infinite}.live-indicator.offline{background:rgba(239,68,68,.15);border-color:rgba(239,68,68,.3);color:#ef4444}.live-indicator.offline .pulse{background:#ef4444;animation:none}.live-indicator.demo{background:rgba(210,153,34,.15);border-color:rgba(210,153,34,.3);color:#d29922}.live-indicator.demo .pulse{background:#d29922}@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}.dashboard-controls{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;gap:.75rem;flex-wrap:wrap}.time-filter{padding:.4rem .75rem;background:#21262d;border:1px solid #30363d;border-radius:6px;color:#e6edf3;font-size:.8rem;cursor:pointer}.time-filter:hover{background:#30363d}.time-filter:focus{outline:none;border-color:#58a6ff}.refresh-btn{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:.4rem;padding:.4rem .75rem;background:#21262d;border:1px solid #30363d;border-radius:6px;color:#8b949e;font-size:.8rem;cursor:pointer;transition:all .2s}.refresh-btn:hover{background:#30363d;color:#e6edf3}.refresh-btn.loading #refresh-icon{animation:spin 1s linear infinite}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.last-update{font-size:.7rem;color:#6e7681}.alert-counters{display:grid;grid-template-columns:repeat(4, 1fr);gap:1rem;padding:1.5rem}@media(max-width: 768px){.alert-counters{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 576px){.alert-counters{grid-template-columns:1fr 1fr;gap:.75rem;padding:1rem}}.counter-card{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;padding:1.25rem 1rem;background:#161b22;border-radius:12px;border:1px solid #30363d;transition:all .2s}.counter-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.3)}.counter-card .counter-icon{font-size:1.5rem;opacity:.8}.counter-card .counter-value{font-size:2rem;font-weight:700;font-variant-numeric:tabular-nums}.counter-card .counter-label{font-size:.75rem;color:#8b949e;text-transform:uppercase;letter-spacing:.05em}.counter-card.critical{border-color:rgba(220,38,38,.4);background:linear-gradient(135deg, #161b22, rgba(220, 38, 38, 0.1))}.counter-card.critical .counter-icon,.counter-card.critical .counter-value{color:#dc2626}.counter-card.high{border-color:rgba(234,88,12,.4);background:linear-gradient(135deg, #161b22, rgba(234, 88, 12, 0.1))}.counter-card.high .counter-icon,.counter-card.high .counter-value{color:#ea580c}.counter-card.default{border-color:rgba(59,130,246,.4);background:linear-gradient(135deg, #161b22, rgba(59, 130, 246, 0.1))}.counter-card.default .counter-icon,.counter-card.default .counter-value{color:#3b82f6}.counter-card.total{border-color:rgba(139,148,158,.3)}.counter-card.total .counter-icon,.counter-card.total .counter-value{color:#e6edf3}.status-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;padding:0 1.5rem 1.5rem}@media(max-width: 768px){.status-grid{grid-template-columns:1fr}}.status-section{background:#161b22;border-radius:12px;border:1px solid #30363d;padding:1rem}.status-title{font-size:.85rem;font-weight:600;color:#8b949e;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid #21262d}.status-cards{display:grid;grid-template-columns:repeat(auto-fill, minmax(120px, 1fr));gap:.75rem}.status-card{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:.5rem;padding:.6rem .75rem;background:#21262d;border-radius:8px;border:1px solid #21262d;font-size:.8rem}.status-card .status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-card .status-dot.online{background:#22c55e;box-shadow:0 0 6px #22c55e}.status-card .status-dot.offline{background:#ef4444}.status-card .status-dot.degraded{background:#f59e0b;animation:pulse 2s infinite}.status-card .status-name{font-weight:500;color:#e6edf3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-card .status-meta{margin-left:auto;font-size:.65rem;color:#6e7681}.alert-categories{padding:0 1.5rem;margin-bottom:1rem}.category-tabs{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.tab-btn{padding:.5rem 1rem;background:rgba(0,0,0,0);border:1px solid #30363d;border-radius:6px;color:#8b949e;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s}.tab-btn:hover{background:#21262d;color:#e6edf3}.tab-btn.active{background:#58a6ff;border-color:#58a6ff;color:#fff}.tab-btn[data-category=security].active{background:#dc2626;border-color:#dc2626}.tab-btn[data-category=health].active{background:#22c55e;border-color:#22c55e}.tab-btn[data-category=debug].active{background:#a371f7;border-color:#a371f7}.alert-filters{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:.75rem;flex-wrap:wrap}.search-input{flex:1;min-width:200px;max-width:400px;padding:.5rem 1rem;background:#21262d;border:1px solid #30363d;border-radius:6px;color:#e6edf3;font-size:.85rem}.search-input::placeholder{color:#6e7681}.search-input:focus{outline:none;border-color:#58a6ff}.filter-select{padding:.5rem .75rem;background:#21262d;border:1px solid #30363d;border-radius:6px;color:#e6edf3;font-size:.8rem;cursor:pointer}.filter-select:focus{outline:none;border-color:#58a6ff}.alert-feed{padding:0 1.5rem;display:grid;grid-template-columns:repeat(4, 1fr);gap:.75rem}@media(max-width: 1200px){.alert-feed{grid-template-columns:repeat(3, 1fr)}}@media(max-width: 1024px){.alert-feed{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 576px){.alert-feed{grid-template-columns:1fr}}.loading-state{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1rem;grid-column:1/-1;padding:3rem;color:#6e7681}.loading-state .spinner{width:32px;height:32px;border:3px solid #30363d;border-top-color:#58a6ff;border-radius:50%;animation:spin 1s linear infinite}.empty-state{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;grid-column:1/-1;padding:3rem;text-align:center;color:#6e7681}.empty-state .empty-icon{font-size:3rem;opacity:.5}.alert-card{background:#161b22;border-radius:10px;border:1px solid #30363d;overflow:hidden;transition:all .2s}.alert-card:hover{border-color:#30363d;box-shadow:0 2px 8px rgba(0,0,0,.2)}.alert-card.priority-urgent,.alert-card.priority-critical{border-left:4px solid #dc2626}.alert-card.priority-urgent .alert-priority,.alert-card.priority-critical .alert-priority{background:rgba(220,38,38,.2);color:#dc2626}.alert-card.priority-high{border-left:4px solid #ea580c}.alert-card.priority-high .alert-priority{background:rgba(234,88,12,.2);color:#ea580c}.alert-card.priority-default{border-left:4px solid #3b82f6}.alert-card.priority-default .alert-priority{background:rgba(59,130,246,.2);color:#3b82f6}.alert-card.priority-low{border-left:4px solid #6b7280}.alert-card.priority-low .alert-priority{background:rgba(107,114,128,.2);color:#6b7280}.alert-card.acknowledged{opacity:.6}.alert-card.acknowledged .alert-header{background:#21262d}.alert-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#21262d;border-bottom:1px solid #21262d}.alert-meta{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:.5rem;flex-wrap:wrap}.alert-priority{padding:.2rem .5rem;border-radius:4px;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.alert-vm{padding:.2rem .5rem;background:#21262d;border-radius:4px;font-size:.7rem;color:#8b949e;font-family:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace}.alert-service{padding:.2rem .5rem;border-radius:4px;font-size:.65rem;font-weight:600;text-transform:uppercase;color:#fff}.alert-service.service-npm{background:#238636}.alert-service.service-authelia{background:#9333ea}.alert-service.service-docker{background:#2496ed}.alert-service.service-ssh{background:#6366f1}.alert-service.service-mailu{background:#f97316}.alert-service.service-sauron{background:#dc2626}.alert-service.service-system{background:#64748b}.alert-service.service-collector{background:#a371f7}.alert-time{font-size:.7rem;color:#6e7681;white-space:nowrap}.alert-body{padding:1rem}.alert-title{font-size:.95rem;font-weight:600;color:#e6edf3;margin-bottom:.5rem}.alert-message{font-size:.85rem;color:#8b949e;line-height:1.5;word-break:break-word}.alert-tags{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:.35rem;flex-wrap:wrap;margin-top:.75rem}.alert-tags .tag{padding:.15rem .4rem;background:#21262d;border-radius:4px;font-size:.65rem;color:#8b949e}.alert-log-cmd{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:.5rem;margin-top:.75rem;padding:.75rem;background:#0d1117;border-radius:6px;border:1px solid #21262d}.alert-log-cmd code{font-family:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace;font-size:.75rem;color:#58a6ff;word-break:break-all;flex:1}.copy-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#21262d;border:1px solid #30363d;border-radius:6px;cursor:pointer;transition:all .2s;flex-shrink:0}.copy-btn:hover{background:#58a6ff;border-color:#58a6ff;color:#fff}.copy-btn.copied{background:#22c55e;border-color:#22c55e;color:#fff}.alert-actions{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;gap:.5rem;padding:.5rem 1rem;border-top:1px solid #21262d}.ack-btn{padding:.35rem .75rem;background:rgba(0,0,0,0);border:1px solid #30363d;border-radius:4px;color:#8b949e;font-size:.75rem;cursor:pointer;transition:all .2s}.ack-btn:hover{background:#22c55e;border-color:#22c55e;color:#fff}.alert-legend{margin:1.5rem 1.5rem 0;background:#161b22;border:1px solid #30363d;border-radius:10px}.alert-legend summary{padding:1rem;font-weight:600;color:#8b949e;cursor:pointer}.alert-legend summary:hover{color:#e6edf3}.alert-legend[open] summary{border-bottom:1px solid #21262d}.legend-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(250px, 1fr));gap:1.5rem;padding:1rem}.legend-section h4{font-size:.85rem;font-weight:600;color:#e6edf3;margin-bottom:.75rem}.legend-section ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:.5rem}.legend-section li{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:.5rem;font-size:.8rem;color:#8b949e}.badge{padding:.2rem .5rem;border-radius:4px;font-size:.65rem;font-weight:600;text-transform:uppercase;color:#fff}.badge.auth{background:#6366f1}.badge.ssh{background:#9333ea}.badge.sauron{background:#dc2626}.badge.system{background:#64748b}.badge.docker{background:#2496ed}.badge.npm{background:#238636}.badge.mailu{background:#f97316}.priority-badge{padding:.2rem .5rem;border-radius:4px;font-size:.65rem;font-weight:600;text-transform:uppercase}.priority-badge.urgent{background:rgba(220,38,38,.2);color:#dc2626}.priority-badge.high{background:rgba(234,88,12,.2);color:#ea580c}.priority-badge.default{background:rgba(59,130,246,.2);color:#3b82f6}.priority-badge.low{background:rgba(107,114,128,.2);color:#6b7280}.matrix-section{margin:1rem 1.5rem;background:#161b22;border:1px solid #30363d;border-radius:10px}.matrix-section summary{padding:1rem;font-weight:600;color:#8b949e;cursor:pointer}.matrix-section summary:hover{color:#e6edf3}.matrix-section[open] summary{border-bottom:1px solid #21262d}.matrix-table{width:100%;border-collapse:collapse;font-size:.8rem}.matrix-table th,.matrix-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #21262d}.matrix-table th{background:#21262d;font-weight:600;color:#8b949e;text-transform:uppercase;font-size:.7rem;letter-spacing:.03em}.matrix-table td{color:#8b949e}.matrix-table tr:last-child td{border-bottom:none}.matrix-table tr:hover td{background:#21262d}.service-badge{padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;color:#fff}.service-badge.npm{background:#238636}.service-badge.authelia{background:#9333ea}.service-badge.docker{background:#2496ed}.service-badge.ssh{background:#6366f1}.service-badge.mailu{background:#f97316}.service-badge.sauron{background:#dc2626}.api-reference{margin:1rem 1.5rem;background:#161b22;border:1px solid #30363d;border-radius:10px}.api-reference summary{padding:1rem;font-weight:600;color:#8b949e;cursor:pointer}.api-reference summary:hover{color:#e6edf3}.api-reference[open] summary{border-bottom:1px solid #21262d}.api-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));gap:1rem;padding:1rem}.api-item{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:.5rem}.api-item strong{font-size:.8rem;color:#e6edf3}.api-item code{font-family:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace;font-size:.75rem;color:#58a6ff;background:#0d1117;padding:.5rem .75rem;border-radius:6px;word-break:break-all}.toast{position:fixed;bottom:2rem;right:2rem;padding:.75rem 1.25rem;background:#21262d;border:1px solid #30363d;border-radius:8px;box-shadow:0 4px 16px rgba(0,0,0,.4);transform:translateY(100px);opacity:0;transition:all .3s ease;z-index:1000}.toast.show{transform:translateY(0);opacity:1}.toast.success{border-color:#22c55e}.toast.success .toast-message{color:#22c55e}.toast.error{border-color:#ef4444}.toast.error .toast-message{color:#ef4444}.toast-message{font-size:.85rem;color:#e6edf3}
