.notification-bell[data-v-e69c7675]{position:relative;display:inline-flex;width:36px;height:36px}.notification-bell-dot[data-v-e69c7675]{position:absolute;top:6px;right:6px;width:8px;height:8px;border:1px solid var(--tn-bg-container);border-radius:50%;background:var(--tn-error);pointer-events:none}.collapsed-navigation[data-v-8866925a]{display:flex;min-height:0;flex:1 1 auto;flex-direction:column;overflow-y:auto}.collapsed-navigation .collapsed-menu[data-v-8866925a]{flex:0 0 auto;overflow:visible}.collapsed-menu-divider[data-v-8866925a]{height:1px;flex:0 0 auto;margin:var(--tn-space-3);background:var(--tn-border-color)}.grid-stack{position:relative}.grid-stack-rtl{direction:ltr}.grid-stack-rtl>.grid-stack-item{direction:rtl}.grid-stack-placeholder>.placeholder-content{background-color:#0000001a;margin:0;position:absolute;width:auto;z-index:0!important}.grid-stack>.grid-stack-item{position:absolute;padding:0}.grid-stack>.grid-stack-item>.grid-stack-item-content{margin:0;position:absolute;width:auto;overflow-x:hidden;overflow-y:auto}.grid-stack>.grid-stack-item.size-to-content:not(.size-to-content-max)>.grid-stack-item-content{overflow-y:hidden}.grid-stack-item>.ui-resizable-handle{position:absolute;font-size:.1px;display:block;-ms-touch-action:none;touch-action:none}.grid-stack-item.ui-resizable-autohide>.ui-resizable-handle,.grid-stack-item.ui-resizable-disabled>.ui-resizable-handle{display:none}.grid-stack-item>.ui-resizable-ne,.grid-stack-item>.ui-resizable-nw,.grid-stack-item>.ui-resizable-se,.grid-stack-item>.ui-resizable-sw{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="none" stroke="%23666" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" viewBox="0 0 20 20"><path d="m10 3 2 2H8l2-2v14l-2-2h4l-2 2"/></svg>');background-repeat:no-repeat;background-position:center}.grid-stack-item>.ui-resizable-ne{transform:rotate(45deg)}.grid-stack-item>.ui-resizable-sw{transform:rotate(45deg)}.grid-stack-item>.ui-resizable-nw{transform:rotate(-45deg)}.grid-stack-item>.ui-resizable-se{transform:rotate(-45deg)}.grid-stack-item>.ui-resizable-nw{cursor:nw-resize;width:20px;height:20px;top:0}.grid-stack-item>.ui-resizable-n{cursor:n-resize;height:10px;top:0;left:25px;right:25px}.grid-stack-item>.ui-resizable-ne{cursor:ne-resize;width:20px;height:20px;top:0}.grid-stack-item>.ui-resizable-e{cursor:e-resize;width:10px;top:15px;bottom:15px}.grid-stack-item>.ui-resizable-se{cursor:se-resize;width:20px;height:20px}.grid-stack-item>.ui-resizable-s{cursor:s-resize;height:10px;left:25px;bottom:0;right:25px}.grid-stack-item>.ui-resizable-sw{cursor:sw-resize;width:20px;height:20px}.grid-stack-item>.ui-resizable-w{cursor:w-resize;width:10px;top:15px;bottom:15px}.grid-stack-item.ui-draggable-dragging>.ui-resizable-handle{display:none!important}.grid-stack-item.ui-draggable-dragging{will-change:left,top;cursor:move}.grid-stack-item.ui-resizable-resizing{will-change:width,height}.ui-draggable-dragging,.ui-resizable-resizing{z-index:10000}.ui-draggable-dragging>.grid-stack-item-content,.ui-resizable-resizing>.grid-stack-item-content{box-shadow:1px 4px 6px #0003;opacity:.8}.grid-stack-animate,.grid-stack-animate .grid-stack-item{transition:left .3s,top .3s,height .3s,width .3s}.grid-stack-animate .grid-stack-item.grid-stack-placeholder,.grid-stack-animate .grid-stack-item.ui-draggable-dragging,.grid-stack-animate .grid-stack-item.ui-resizable-resizing{transition:left 0s,top 0s,height 0s,width 0s}.grid-stack>.grid-stack-item[gs-y="0"]{top:0}.grid-stack>.grid-stack-item[gs-x="0"]{left:0}.gs-12>.grid-stack-item{width:8.333%}.gs-12>.grid-stack-item[gs-x="1"]{left:8.333%}.gs-12>.grid-stack-item[gs-w="2"]{width:16.667%}.gs-12>.grid-stack-item[gs-x="2"]{left:16.667%}.gs-12>.grid-stack-item[gs-w="3"]{width:25%}.gs-12>.grid-stack-item[gs-x="3"]{left:25%}.gs-12>.grid-stack-item[gs-w="4"]{width:33.333%}.gs-12>.grid-stack-item[gs-x="4"]{left:33.333%}.gs-12>.grid-stack-item[gs-w="5"]{width:41.667%}.gs-12>.grid-stack-item[gs-x="5"]{left:41.667%}.gs-12>.grid-stack-item[gs-w="6"]{width:50%}.gs-12>.grid-stack-item[gs-x="6"]{left:50%}.gs-12>.grid-stack-item[gs-w="7"]{width:58.333%}.gs-12>.grid-stack-item[gs-x="7"]{left:58.333%}.gs-12>.grid-stack-item[gs-w="8"]{width:66.667%}.gs-12>.grid-stack-item[gs-x="8"]{left:66.667%}.gs-12>.grid-stack-item[gs-w="9"]{width:75%}.gs-12>.grid-stack-item[gs-x="9"]{left:75%}.gs-12>.grid-stack-item[gs-w="10"]{width:83.333%}.gs-12>.grid-stack-item[gs-x="10"]{left:83.333%}.gs-12>.grid-stack-item[gs-w="11"]{width:91.667%}.gs-12>.grid-stack-item[gs-x="11"]{left:91.667%}.gs-12>.grid-stack-item[gs-w="12"]{width:100%}.gs-1>.grid-stack-item{width:100%}.gs-2>.grid-stack-item{width:50%}.gs-2>.grid-stack-item[gs-x="1"]{left:50%}.gs-2>.grid-stack-item[gs-w="2"]{width:100%}.gs-3>.grid-stack-item{width:33.333%}.gs-3>.grid-stack-item[gs-x="1"]{left:33.333%}.gs-3>.grid-stack-item[gs-w="2"]{width:66.667%}.gs-3>.grid-stack-item[gs-x="2"]{left:66.667%}.gs-3>.grid-stack-item[gs-w="3"]{width:100%}.gs-4>.grid-stack-item{width:25%}.gs-4>.grid-stack-item[gs-x="1"]{left:25%}.gs-4>.grid-stack-item[gs-w="2"]{width:50%}.gs-4>.grid-stack-item[gs-x="2"]{left:50%}.gs-4>.grid-stack-item[gs-w="3"]{width:75%}.gs-4>.grid-stack-item[gs-x="3"]{left:75%}.gs-4>.grid-stack-item[gs-w="4"]{width:100%}.gs-5>.grid-stack-item{width:20%}.gs-5>.grid-stack-item[gs-x="1"]{left:20%}.gs-5>.grid-stack-item[gs-w="2"]{width:40%}.gs-5>.grid-stack-item[gs-x="2"]{left:40%}.gs-5>.grid-stack-item[gs-w="3"]{width:60%}.gs-5>.grid-stack-item[gs-x="3"]{left:60%}.gs-5>.grid-stack-item[gs-w="4"]{width:80%}.gs-5>.grid-stack-item[gs-x="4"]{left:80%}.gs-5>.grid-stack-item[gs-w="5"]{width:100%}.gs-6>.grid-stack-item{width:16.667%}.gs-6>.grid-stack-item[gs-x="1"]{left:16.667%}.gs-6>.grid-stack-item[gs-w="2"]{width:33.333%}.gs-6>.grid-stack-item[gs-x="2"]{left:33.333%}.gs-6>.grid-stack-item[gs-w="3"]{width:50%}.gs-6>.grid-stack-item[gs-x="3"]{left:50%}.gs-6>.grid-stack-item[gs-w="4"]{width:66.667%}.gs-6>.grid-stack-item[gs-x="4"]{left:66.667%}.gs-6>.grid-stack-item[gs-w="5"]{width:83.333%}.gs-6>.grid-stack-item[gs-x="5"]{left:83.333%}.gs-6>.grid-stack-item[gs-w="6"]{width:100%}.gs-7>.grid-stack-item{width:14.286%}.gs-7>.grid-stack-item[gs-x="1"]{left:14.286%}.gs-7>.grid-stack-item[gs-w="2"]{width:28.571%}.gs-7>.grid-stack-item[gs-x="2"]{left:28.571%}.gs-7>.grid-stack-item[gs-w="3"]{width:42.857%}.gs-7>.grid-stack-item[gs-x="3"]{left:42.857%}.gs-7>.grid-stack-item[gs-w="4"]{width:57.143%}.gs-7>.grid-stack-item[gs-x="4"]{left:57.143%}.gs-7>.grid-stack-item[gs-w="5"]{width:71.429%}.gs-7>.grid-stack-item[gs-x="5"]{left:71.429%}.gs-7>.grid-stack-item[gs-w="6"]{width:85.714%}.gs-7>.grid-stack-item[gs-x="6"]{left:85.714%}.gs-7>.grid-stack-item[gs-w="7"]{width:100%}.gs-8>.grid-stack-item{width:12.5%}.gs-8>.grid-stack-item[gs-x="1"]{left:12.5%}.gs-8>.grid-stack-item[gs-w="2"]{width:25%}.gs-8>.grid-stack-item[gs-x="2"]{left:25%}.gs-8>.grid-stack-item[gs-w="3"]{width:37.5%}.gs-8>.grid-stack-item[gs-x="3"]{left:37.5%}.gs-8>.grid-stack-item[gs-w="4"]{width:50%}.gs-8>.grid-stack-item[gs-x="4"]{left:50%}.gs-8>.grid-stack-item[gs-w="5"]{width:62.5%}.gs-8>.grid-stack-item[gs-x="5"]{left:62.5%}.gs-8>.grid-stack-item[gs-w="6"]{width:75%}.gs-8>.grid-stack-item[gs-x="6"]{left:75%}.gs-8>.grid-stack-item[gs-w="7"]{width:87.5%}.gs-8>.grid-stack-item[gs-x="7"]{left:87.5%}.gs-8>.grid-stack-item[gs-w="8"]{width:100%}.gs-9>.grid-stack-item{width:11.111%}.gs-9>.grid-stack-item[gs-x="1"]{left:11.111%}.gs-9>.grid-stack-item[gs-w="2"]{width:22.222%}.gs-9>.grid-stack-item[gs-x="2"]{left:22.222%}.gs-9>.grid-stack-item[gs-w="3"]{width:33.333%}.gs-9>.grid-stack-item[gs-x="3"]{left:33.333%}.gs-9>.grid-stack-item[gs-w="4"]{width:44.444%}.gs-9>.grid-stack-item[gs-x="4"]{left:44.444%}.gs-9>.grid-stack-item[gs-w="5"]{width:55.556%}.gs-9>.grid-stack-item[gs-x="5"]{left:55.556%}.gs-9>.grid-stack-item[gs-w="6"]{width:66.667%}.gs-9>.grid-stack-item[gs-x="6"]{left:66.667%}.gs-9>.grid-stack-item[gs-w="7"]{width:77.778%}.gs-9>.grid-stack-item[gs-x="7"]{left:77.778%}.gs-9>.grid-stack-item[gs-w="8"]{width:88.889%}.gs-9>.grid-stack-item[gs-x="8"]{left:88.889%}.gs-9>.grid-stack-item[gs-w="9"]{width:100%}.gs-10>.grid-stack-item{width:10%}.gs-10>.grid-stack-item[gs-x="1"]{left:10%}.gs-10>.grid-stack-item[gs-w="2"]{width:20%}.gs-10>.grid-stack-item[gs-x="2"]{left:20%}.gs-10>.grid-stack-item[gs-w="3"]{width:30%}.gs-10>.grid-stack-item[gs-x="3"]{left:30%}.gs-10>.grid-stack-item[gs-w="4"]{width:40%}.gs-10>.grid-stack-item[gs-x="4"]{left:40%}.gs-10>.grid-stack-item[gs-w="5"]{width:50%}.gs-10>.grid-stack-item[gs-x="5"]{left:50%}.gs-10>.grid-stack-item[gs-w="6"]{width:60%}.gs-10>.grid-stack-item[gs-x="6"]{left:60%}.gs-10>.grid-stack-item[gs-w="7"]{width:70%}.gs-10>.grid-stack-item[gs-x="7"]{left:70%}.gs-10>.grid-stack-item[gs-w="8"]{width:80%}.gs-10>.grid-stack-item[gs-x="8"]{left:80%}.gs-10>.grid-stack-item[gs-w="9"]{width:90%}.gs-10>.grid-stack-item[gs-x="9"]{left:90%}.gs-10>.grid-stack-item[gs-w="10"]{width:100%}.gs-11>.grid-stack-item{width:9.091%}.gs-11>.grid-stack-item[gs-x="1"]{left:9.091%}.gs-11>.grid-stack-item[gs-w="2"]{width:18.182%}.gs-11>.grid-stack-item[gs-x="2"]{left:18.182%}.gs-11>.grid-stack-item[gs-w="3"]{width:27.273%}.gs-11>.grid-stack-item[gs-x="3"]{left:27.273%}.gs-11>.grid-stack-item[gs-w="4"]{width:36.364%}.gs-11>.grid-stack-item[gs-x="4"]{left:36.364%}.gs-11>.grid-stack-item[gs-w="5"]{width:45.455%}.gs-11>.grid-stack-item[gs-x="5"]{left:45.455%}.gs-11>.grid-stack-item[gs-w="6"]{width:54.545%}.gs-11>.grid-stack-item[gs-x="6"]{left:54.545%}.gs-11>.grid-stack-item[gs-w="7"]{width:63.636%}.gs-11>.grid-stack-item[gs-x="7"]{left:63.636%}.gs-11>.grid-stack-item[gs-w="8"]{width:72.727%}.gs-11>.grid-stack-item[gs-x="8"]{left:72.727%}.gs-11>.grid-stack-item[gs-w="9"]{width:81.818%}.gs-11>.grid-stack-item[gs-x="9"]{left:81.818%}.gs-11>.grid-stack-item[gs-w="10"]{width:90.909%}.gs-11>.grid-stack-item[gs-x="10"]{left:90.909%}.gs-11>.grid-stack-item[gs-w="11"]{width:100%}.dashboard-v2-widget-frame[data-v-607a86be]{display:flex;min-height:0;flex-direction:column;height:100%;border:1px solid var(--tn-border-color);border-radius:var(--tn-card-radius);background:var(--tn-bg-container);box-shadow:var(--tn-shadow-card)}.dashboard-v2-widget-title[data-v-607a86be],.dashboard-v2-widget-actions[data-v-607a86be],.dashboard-v2-widget-title>span[data-v-607a86be]{display:flex;align-items:center}.dashboard-v2-widget-title[data-v-607a86be]{gap:var(--tn-control-gap)}.dashboard-v2-widget-title>span[data-v-607a86be]{min-width:0;gap:var(--tn-control-gap)}.dashboard-v2-widget-title strong[data-v-607a86be]{color:var(--tn-text-primary);font-size:16px}.dashboard-v2-widget-title small[data-v-607a86be]{color:var(--tn-text-tertiary);font-size:11px}.dashboard-v2-widget-actions[data-v-607a86be]{gap:var(--tn-space-1)}.dashboard-v2-drag-handle[data-v-607a86be]{cursor:grab;color:var(--tn-text-tertiary)}.dashboard-v2-overview[data-v-131af205]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--tn-space-3)}.dashboard-v2-metric[data-v-131af205]{display:grid;gap:var(--tn-space-1);min-width:0;padding:var(--tn-space-3);border:1px solid var(--tn-border-color);border-radius:var(--tn-radius-control);background:var(--tn-bg-soft)}.dashboard-v2-metric span[data-v-131af205],.dashboard-v2-runtime-item small[data-v-131af205]{color:var(--tn-text-secondary)}.dashboard-v2-metric strong[data-v-131af205]{color:var(--tn-text-primary);font-size:24px}.dashboard-v2-stat[data-v-131af205]{display:flex;min-width:0;height:100%;align-items:center;gap:var(--tn-space-3)}.dashboard-v2-stat-icon[data-v-131af205]{display:inline-flex;width:38px;height:38px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:var(--tn-radius-control);background:var(--tn-primary-soft);color:var(--tn-primary)}.dashboard-v2-stat.is-success .dashboard-v2-stat-icon[data-v-131af205]{background:var(--tn-success-soft);color:var(--tn-success)}.dashboard-v2-stat.is-warning .dashboard-v2-stat-icon[data-v-131af205]{background:var(--tn-warning-soft);color:var(--tn-warning)}.dashboard-v2-stat>div[data-v-131af205]{display:grid;min-width:0;gap:var(--tn-space-1)}.dashboard-v2-stat strong[data-v-131af205]{color:var(--tn-text-primary);font-size:24px;line-height:1.1}.dashboard-v2-stat small[data-v-131af205]{overflow:hidden;color:var(--tn-text-secondary);text-overflow:ellipsis;white-space:nowrap}.dashboard-v2-list[data-v-131af205]{display:grid;gap:var(--tn-space-2)}.dashboard-v2-list button[data-v-131af205]{display:flex;align-items:center;justify-content:space-between;gap:var(--tn-space-3);width:100%;border:0;border-radius:var(--tn-radius-control);padding:var(--tn-space-2) var(--tn-space-3);background:transparent;color:var(--tn-text-primary);cursor:pointer;text-align:left}.dashboard-v2-list button[data-v-131af205]:hover{background:var(--tn-bg-hover)}.dashboard-v2-list button>span[data-v-131af205]{display:grid;min-width:0;gap:var(--tn-space-1)}.dashboard-v2-list button strong[data-v-131af205],.dashboard-v2-list button small[data-v-131af205]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-v2-list button small[data-v-131af205],.dashboard-v2-empty[data-v-131af205],.dashboard-v2-system-info dt[data-v-131af205]{color:var(--tn-text-secondary)}.dashboard-v2-system-info[data-v-131af205]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--tn-space-3);margin:0}.dashboard-v2-system-info div[data-v-131af205]{min-width:0}.dashboard-v2-system-info dt[data-v-131af205]{margin-bottom:var(--tn-space-1)}.dashboard-v2-system-info dd[data-v-131af205]{margin:0;overflow:hidden;color:var(--tn-text-primary);text-overflow:ellipsis;white-space:nowrap}.dashboard-v2-header[data-v-667d834b]{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--tn-section-gap);margin-bottom:var(--tn-section-gap)}.dashboard-v2-header h1[data-v-667d834b]{margin:0;color:var(--tn-text-primary);font-size:24px}.dashboard-v2-header p[data-v-667d834b]{margin:var(--tn-space-1) 0 0;color:var(--tn-text-secondary)}.dashboard-v2-toolbar[data-v-667d834b]{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--tn-control-gap)}.dashboard-v2-grid[data-v-667d834b]{min-height:300px}.dashboard-v2-grid.is-editing .grid-stack-item-content[data-v-667d834b]{outline:1px dashed color-mix(in srgb,var(--tn-color-primary),transparent 45%);outline-offset:-2px}.grid-stack-item-content[data-v-667d834b]{top:0;right:0;bottom:0;left:0;background:transparent}.dashboard-v2-catalog[data-v-667d834b]{display:grid;gap:var(--tn-section-gap)}.dashboard-v2-catalog h3[data-v-667d834b]{margin:0 0 var(--tn-space-2);color:var(--tn-text-primary);font-size:14px}.dashboard-v2-catalog section[data-v-667d834b]{display:grid;gap:var(--tn-space-2)}.dashboard-v2-catalog button[data-v-667d834b]{display:flex;width:100%;min-height:72px;align-items:center;justify-content:space-between;gap:var(--tn-space-3);border:1px solid var(--tn-border-color);border-radius:var(--tn-card-radius);padding:var(--tn-space-3);background:var(--tn-bg-container);color:var(--tn-text-primary);cursor:pointer;text-align:left;transition:border-color .18s ease,background-color .18s ease}.dashboard-v2-catalog button[data-v-667d834b]:hover:not(:disabled){border-color:var(--tn-color-primary);background:var(--tn-bg-hover)}.dashboard-v2-catalog button[data-v-667d834b]:disabled{cursor:default;opacity:.58}.dashboard-v2-catalog button span[data-v-667d834b]{display:grid;gap:var(--tn-space-1)}.dashboard-v2-catalog button small[data-v-667d834b]{color:var(--tn-text-secondary)}.dashboard-v2-catalog button em[data-v-667d834b]{color:var(--tn-color-primary);font-style:normal;font-weight:700}@media(max-width:760px){.dashboard-v2-header[data-v-667d834b]{flex-direction:column}.dashboard-v2-toolbar[data-v-667d834b]{justify-content:flex-start}}.health-card[data-v-51456d2a]{max-width:560px}:root{--tn-color-primary: #2563eb;--tn-color-primary-hover: #3b82f6;--tn-color-primary-pressed: #1d4ed8;--tn-success: #16a34a;--tn-warning: #d97706;--tn-error: #dc2626;--tn-success-soft: rgba(22, 163, 74, .12);--tn-warning-soft: rgba(217, 119, 6, .13);--tn-error-soft: rgba(220, 38, 38, .12);--tn-bg-layout: #f5f7fa;--tn-bg-container: #ffffff;--tn-bg-elevated: #ffffff;--tn-bg-soft: #f7f8fa;--tn-bg-hover: #f2f4f7;--tn-bg-active: #eaf2ff;--tn-text-primary: #1d2129;--tn-text-secondary: #4e5969;--tn-text-tertiary: #86909c;--tn-text-disabled: #c9cdd4;--tn-border-color: #e5e7eb;--tn-border-light: #eef0f3;--tn-sidebar-width: 230px;--tn-sidebar-collapsed-width: 64px;--tn-header-height: 64px;--tn-page-padding: 24px;--tn-page-padding-mobile: 16px;--tn-page-padding-x: 24px;--tn-page-padding-y: 20px;--tn-section-gap: 16px;--tn-card-gap: 16px;--tn-control-gap: 8px;--tn-card-padding: 20px;--tn-card-radius: 8px;--tn-toolbar-height: 40px;--tn-table-row-height: 56px;--tn-content-max-width: 1600px;--tn-space-1: 4px;--tn-space-2: 8px;--tn-space-3: 12px;--tn-space-4: 16px;--tn-space-5: 20px;--tn-space-6: 24px;--tn-space-8: 32px;--tn-radius-control: 8px;--tn-radius-menu: 10px;--tn-radius-card: 12px;--tn-radius-large: 16px;--tn-shadow-card: 0 1px 2px rgba(0, 0, 0, .03), 0 4px 12px rgba(0, 0, 0, .025)}.tn-page-stack{display:grid;min-width:0;gap:var(--tn-section-gap)}.tn-two-column-grid{display:grid;min-width:0;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:var(--tn-card-gap)}.tn-responsive-grid{display:grid;min-width:0;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--tn-card-gap)}@media(max-width:900px){.tn-two-column-grid{grid-template-columns:1fr}}.tn-truncate{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tn-muted{color:var(--tn-text-tertiary)}.tn-secondary{color:var(--tn-text-secondary)}.tn-scroll-x{width:100%;min-width:0;overflow-x:auto}.tn-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}:root{--tn-color-primary: #2563eb;--tn-color-primary-hover: #3b82f6;--tn-color-primary-pressed: #1d4ed8;--tn-success: #16a34a;--tn-warning: #d97706;--tn-error: #dc2626;--tn-success-soft: rgba(22, 163, 74, .12);--tn-warning-soft: rgba(217, 119, 6, .13);--tn-error-soft: rgba(220, 38, 38, .12);--tn-bg-layout: #f5f7fa;--tn-bg-container: #ffffff;--tn-bg-elevated: #ffffff;--tn-bg-soft: #f7f8fa;--tn-bg-hover: #f2f4f7;--tn-bg-active: #eaf2ff;--tn-text-primary: #1d2129;--tn-text-secondary: #4e5969;--tn-text-tertiary: #86909c;--tn-text-disabled: #c9cdd4;--tn-border-color: #e5e7eb;--tn-border-light: #eef0f3;--tn-shadow-card: 0 1px 3px rgba(0, 0, 0, .04);--tn-radius-sm: 6px;--tn-radius-md: 8px;--tn-radius-lg: 10px;--tn-sidebar-width: 230px;--tn-sidebar-collapsed-width: 64px;--tn-header-height: 64px;--tn-page-padding: var(--tn-page-padding-y) var(--tn-page-padding-x);--tn-gap: 20px;--tn-primary: var(--tn-color-primary);--tn-primary-soft: var(--tn-bg-active);--tn-bg: var(--tn-bg-layout);--tn-sider: var(--tn-bg-container);--tn-card: var(--tn-bg-container);--tn-hover: var(--tn-bg-hover);--tn-border: var(--tn-border-color);--tn-border-soft: var(--tn-border-light);--tn-text: var(--tn-text-primary);--tn-text-2: var(--tn-text-secondary);--tn-text-3: var(--tn-text-tertiary);--tn-radius: var(--tn-radius-card);--tn-shadow: var(--tn-shadow-card)}*{box-sizing:border-box}html{overflow:hidden;background:var(--tn-bg)}html,body,#app{width:100%;min-width:320px;height:100%;min-height:100%;margin:0}body{overflow:hidden;color:var(--tn-text);background:var(--tn-bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,textarea,select{font:inherit}a{color:inherit}html.dark{--tn-color-primary: #4c8dff;--tn-color-primary-hover: #6aa0ff;--tn-color-primary-pressed: #3578e5;--tn-success: #4ade80;--tn-warning: #fbbf24;--tn-error: #f87171;--tn-success-soft: rgba(74, 222, 128, .14);--tn-warning-soft: rgba(251, 191, 36, .14);--tn-error-soft: rgba(248, 113, 113, .14);--tn-bg-layout: #101014;--tn-bg-container: #18181c;--tn-bg-elevated: #202024;--tn-bg-soft: #232327;--tn-bg-hover: #2a2a2f;--tn-bg-active: rgba(76, 141, 255, .18);--tn-text-primary: rgba(255, 255, 255, .9);--tn-text-secondary: rgba(255, 255, 255, .68);--tn-text-tertiary: rgba(255, 255, 255, .45);--tn-text-disabled: rgba(255, 255, 255, .28);--tn-border-color: rgba(255, 255, 255, .1);--tn-border-light: rgba(255, 255, 255, .06);--tn-shadow-card: none}#app{overflow:hidden}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#7084965c;border:3px solid transparent;border-radius:999px;background-clip:content-box}.app-shell{width:100%;height:100vh;min-width:0;overflow:hidden;background:var(--tn-bg)}.app-sidebar{position:relative;height:100vh;overflow:hidden;-webkit-user-select:none;user-select:none;border-right:1px solid var(--tn-border-light);background:var(--tn-sider);transition:background-color .28s ease,border-color .28s ease}.brand{height:60px;display:flex;align-items:center;gap:10px;padding:0 16px;color:var(--tn-text);overflow:hidden;cursor:default}.brand-mark{display:grid;place-items:center;width:34px;height:34px;flex:0 0 auto;border:1px solid var(--tn-border-light);border-radius:8px;color:var(--tn-primary);background:var(--tn-bg-active);box-shadow:none;font-size:12px;font-weight:800;transition:background-color .28s ease,border-color .28s ease,color .28s ease}.brand-text{display:flex;min-width:0;flex-direction:column;gap:2px}.brand-text strong{color:var(--tn-text);font-size:18px;line-height:1.15;font-weight:600}.brand-text span{color:var(--tn-text-3);font-size:11px;line-height:1.1;font-weight:500;letter-spacing:.04em}.sidebar-version{flex:0 0 auto;margin:0 16px;padding:12px 0 14px;border-top:1px solid var(--tn-border-light);color:var(--tn-text-3);font-size:12px}.app-sidebar .n-menu{--n-item-height: 42px !important;--n-item-border-radius: 6px !important;--n-item-color-hover: var(--tn-bg-hover) !important;--n-item-color-active: var(--tn-bg-active) !important;--n-item-color-active-hover: var(--tn-bg-active) !important;--n-item-text-color: var(--tn-text-2) !important;--n-item-text-color-hover: var(--tn-text) !important;--n-item-text-color-active: var(--tn-primary) !important;--n-item-text-color-active-hover: var(--tn-primary) !important;--n-item-icon-color: var(--tn-text-2) !important;--n-item-icon-color-hover: var(--tn-text) !important;--n-item-icon-color-active: var(--tn-primary) !important;--n-item-icon-color-active-hover: var(--tn-primary) !important;--n-group-text-color: var(--tn-text-3) !important;min-height:0;flex:1 1 auto;overflow-y:auto;padding:8px}.app-sidebar .n-menu .n-menu-item-group-title{height:34px;padding:12px 12px 6px!important;color:var(--tn-text-3);font-size:12px;font-weight:600;line-height:16px}.app-sidebar .n-menu .n-menu-item{margin-bottom:4px}.app-sidebar .n-menu .n-menu-item-content{min-height:42px;margin:0;padding-right:12px!important;color:var(--tn-text-2);border-radius:6px;transition:background-color .18s ease,color .18s ease}.app-sidebar .n-menu .n-menu-item-content:before{border-radius:6px}.app-sidebar .n-menu .n-menu-item-content__icon{display:inline-grid;width:20px;height:20px;margin-right:10px;place-items:center;background:transparent;color:var(--tn-text-secondary);font-size:18px;transition:color .18s ease}.app-sidebar .n-menu .n-menu-item-content:hover{background:var(--tn-bg-hover);color:var(--tn-text)}.app-sidebar .n-menu .n-menu-item-content--selected .n-menu-item-content__icon{color:var(--tn-primary)}.app-sidebar .n-menu .n-menu-item-content--selected{color:var(--tn-primary);background:var(--tn-bg-active);font-weight:600}.app-sidebar .n-menu .n-menu-item-content-header{font-size:14px;font-weight:500}.app-sidebar .n-menu .n-menu-item-content--selected .n-menu-item-content-header{font-weight:600}.app-sidebar .n-menu .n-submenu{margin-bottom:4px}.app-sidebar .n-menu .n-submenu>.n-menu-item-content--child-active{color:var(--tn-primary);background:var(--tn-bg-active);font-weight:600}.app-sidebar .n-menu .n-submenu>.n-menu-item-content--child-active .n-menu-item-content__icon,.app-sidebar .n-menu .n-submenu>.n-menu-item-content--child-active .n-menu-item-content-header,.app-sidebar .n-menu .n-submenu>.n-menu-item-content--child-active .n-menu-item-content__arrow{color:var(--tn-primary)}.app-sidebar .n-menu .n-submenu-children .n-menu-item-content{min-height:40px;color:var(--tn-text-2)}.app-sidebar .n-menu .n-submenu-children .n-menu-item-content-header{font-size:14px;font-weight:500}.app-sidebar .n-menu .n-submenu-children .n-menu-item-content--selected{color:var(--tn-primary);background:var(--tn-bg-active);font-weight:600}.app-sidebar .n-menu .n-submenu-children .n-menu-item-content:hover{color:var(--tn-text);background:var(--tn-bg-hover)}.app-sidebar.n-layout-sider--collapsed .brand{justify-content:center;padding:0}.app-sidebar.n-layout-sider--collapsed .brand-mark{width:32px;height:32px}.app-sidebar.n-layout-sider--collapsed .n-menu{padding:8px}.app-sidebar.n-layout-sider--collapsed .n-menu .n-menu-item-content{padding-left:13px!important;padding-right:13px!important}.app-sidebar.n-layout-sider--collapsed .n-menu .n-menu-item-content__icon{margin-right:0}.app-header{height:var(--tn-header-height);display:flex;align-items:center;gap:12px;padding:0 20px;border-bottom:1px solid var(--tn-border);color:var(--tn-text);background:var(--tn-card)}.header-breadcrumb{display:inline-flex;min-width:0;align-items:center;gap:8px;color:var(--tn-text-3);font-size:13px;font-weight:500}.header-breadcrumb strong{color:var(--tn-text);font-weight:600}.header-title{min-width:0;color:var(--tn-text-2);font-size:13px;font-weight:500}.header-spacer{flex:1;min-width:0}.header-tool,.header-action-button{width:36px;height:36px;border-radius:8px}.user-trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;height:36px;align-items:center;gap:8px;padding:0 10px 0 6px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--tn-text);cursor:pointer}.user-trigger:hover{border-color:var(--tn-border);background:var(--tn-hover)}.user-avatar{display:grid;width:26px;height:26px;place-items:center;border-radius:50%;background:linear-gradient(135deg,#2563eb,#0f766e);color:#fff;font-size:12px;font-weight:700}.app-sidebar-inner{display:flex;height:100%;min-height:0;flex-direction:column;overflow:hidden}.notification-drawer .n-drawer-body-content-wrapper{padding:var(--tn-card-gap)}.notification-list{display:grid;gap:var(--tn-space-3)}.notification-toolbar{margin-bottom:var(--tn-card-gap);color:var(--tn-text-2);font-size:13px}.notification-item{display:grid;gap:var(--tn-control-gap);padding:var(--tn-card-gap);border:1px solid var(--tn-border-soft);border-radius:var(--tn-card-radius);background:var(--tn-card)}.notification-item.is-unread{border-color:color-mix(in srgb,var(--tn-primary),var(--tn-border-soft) 55%);background:color-mix(in srgb,var(--tn-primary-soft),var(--tn-card) 72%)}.notification-main{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:grid;gap:8px;width:100%;padding:0;border:0;background:transparent;color:inherit;cursor:pointer;text-align:left}.notification-title-row{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:var(--tn-control-gap)}.notification-title-row strong{min-width:0;overflow:hidden;color:var(--tn-text);font-size:14px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.notification-summary,.notification-content,.notification-meta{color:var(--tn-text-2);font-size:13px;line-height:1.55}.notification-content{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}.notification-meta{color:var(--tn-text-3)}.notification-actions{display:flex;justify-content:flex-end;gap:var(--tn-control-gap)}.notification-empty{padding:64px 0}.user-name{max-width:92px;overflow:hidden;color:var(--tn-text);font-size:13px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.account-chip{display:inline-flex;min-width:176px;align-items:center;gap:10px;height:44px;padding:0 14px 0 10px;border:1px solid var(--tn-border-light);border-radius:14px;background:var(--tn-bg-soft);color:var(--tn-text);cursor:pointer;text-align:left;box-shadow:var(--tn-shadow-card);transition:background .18s ease,border-color .18s ease,box-shadow .18s ease}.account-badge{display:inline-flex;width:28px;height:28px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(135deg,#2563eb,#0f766e);color:#fff;font-size:12px;font-weight:700}.account-copy{display:flex;min-width:0;flex:1;flex-direction:column}.account-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--tn-text);font-size:13px;font-weight:700}.account-copy small{margin-top:1px;color:var(--tn-text-2);font-size:11px;font-weight:500}.account-dot{width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px #22c55e29}.app-content{height:calc(100vh - var(--tn-header-height));min-width:0;overflow:auto;padding:var(--tn-page-padding);background:var(--tn-bg)}.page-shell,.app-content>main{display:grid;width:100%;min-width:0;max-width:var(--tn-content-max-width);margin:0 auto;gap:var(--tn-section-gap)}.page-container,.app-page{display:grid;width:100%;min-width:0;max-width:var(--tn-content-max-width);margin:0 auto;gap:var(--tn-section-gap)}.page-container--narrow,.app-page--narrow{max-width:1200px}.app-card,.section-card,.filter-bar{border:1px solid var(--tn-border-light);border-radius:var(--tn-radius-card);background:var(--tn-bg-container);box-shadow:var(--tn-shadow-card)}.app-card>.n-card-header{padding:var(--tn-card-padding) var(--tn-card-padding) 0}.app-card>.n-card-header .n-card-header__main{color:var(--tn-text-primary);font-size:16px;font-weight:600}.app-card>.n-card__content{padding:var(--tn-card-padding)}.section-card{padding:var(--tn-card-padding)}.section-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--tn-card-gap);margin-bottom:var(--tn-card-gap)}.section-card-head h2{margin:0;color:var(--tn-text-primary);font-size:16px;font-weight:600}.section-card-head p{margin:6px 0 0;color:var(--tn-text-secondary);font-size:13px;line-height:1.5}.filter-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--tn-control-gap);padding:var(--tn-card-gap)}.filter-bar-fields,.filter-bar-actions{display:flex;align-items:center;gap:var(--tn-control-gap);flex-wrap:wrap}.filter-bar .n-select{width:180px}.filter-bar .n-input{width:300px}.table-card{overflow:hidden}.table-card .n-data-table{margin:0 -20px}.table-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px -20px -20px;padding:14px 20px;border-top:1px solid var(--tn-border-light);color:var(--tn-text-secondary);background:var(--tn-bg-soft);font-size:13px}.log-table-card>.n-card__content{padding:0}.log-table-card.table-card .n-data-table{margin:0}.log-table-wrap{margin-top:16px;padding:0 20px}.log-table-card .table-card-footer{margin:16px 0 0;padding-right:20px;padding-left:20px;background:var(--tn-bg-container)}.log-card-head{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:0 20px}.log-card-head h2{margin:0;color:var(--tn-text);font-size:16px;font-weight:600}.dashboard-card-head{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:0 20px}.dashboard-card-head h2{margin:0;color:var(--tn-text);font-size:16px;font-weight:600}.dashboard-log-card>.n-card__content{padding:0 0 20px}.dashboard-log-card.table-card .n-data-table{margin:0}.dashboard-log-table-wrap{margin-top:16px;padding:0 10px}.runtime-status-card{min-width:0}.runtime-status-card>.n-card-header{padding:var(--tn-card-gap) var(--tn-card-gap) 0}.runtime-status-card>.n-card__content,.runtime-status-card>.n-card-content{padding:calc(var(--tn-card-gap) + 2px) var(--tn-card-gap) var(--tn-card-gap)}.runtime-status-head{display:flex;align-items:center;min-width:0}.runtime-status-head h2{margin:0;color:var(--tn-text-primary);font-size:16px;line-height:1.4;font-weight:650}.runtime-status-body{display:grid;gap:calc(var(--tn-card-gap) + 2px);min-width:0}.runtime-status-error{border-radius:var(--tn-radius-control)}.runtime-metric{display:grid;min-width:0;align-content:space-between;gap:10px;min-height:128px;padding:14px;border:1px solid var(--tn-border-light);border-radius:var(--tn-radius-control);background:color-mix(in srgb,var(--tn-bg-soft),var(--tn-bg-container) 38%);transition:border-color .18s ease,background-color .18s ease}.runtime-metric:hover{border-color:color-mix(in srgb,var(--tn-primary),var(--tn-border-color) 64%);background:var(--tn-bg-soft)}.runtime-metric-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--tn-card-gap);min-width:0}.runtime-metric-top{display:grid;min-width:0;gap:6px}.runtime-metric-name{min-width:0;overflow:hidden;color:var(--tn-text-secondary);font-size:13px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.runtime-metric-value{color:var(--tn-text-primary);font-size:22px;line-height:1.1;font-weight:700}.runtime-metric-detail{min-width:0;overflow:hidden;color:var(--tn-text-secondary);font-size:12px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.runtime-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--tn-control-gap);grid-column:1 / -1;margin-top:4px;padding-top:var(--tn-card-gap);border-top:1px solid var(--tn-border-light)}.runtime-meta-grid div{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:var(--tn-control-gap);padding:8px 10px;border:1px solid var(--tn-border-light);border-radius:var(--tn-radius-control);background:color-mix(in srgb,var(--tn-bg-soft),transparent 18%)}.runtime-meta-grid span{color:var(--tn-text-tertiary);font-size:12px}.runtime-meta-grid strong{color:var(--tn-text-primary);font-size:13px;font-weight:600;white-space:nowrap}.log-title-row{display:inline-flex;align-items:baseline;gap:10px;min-width:0}.log-title-row span,.auto-refresh-label{color:var(--tn-text-2);font-size:13px}.log-data-table{--n-th-color: var(--tn-bg-soft) !important;--n-th-text-color: var(--tn-text-2) !important;--n-td-color-hover: var(--tn-bg-hover) !important;--n-border-color: var(--tn-border-light) !important}.log-data-table .n-data-table-th{height:46px;font-size:13px;font-weight:600}.log-data-table .n-data-table-td{height:48px;padding-top:7px;padding-bottom:7px;font-size:13px}.log-data-table .n-data-table-tr{cursor:pointer}.log-data-table .is-current-log-row .n-data-table-td{background:var(--tn-bg-active)}.log-time-cell{color:var(--tn-text-2);font-size:12px;white-space:nowrap}.log-type-tag{color:var(--tn-text-2);background:var(--tn-bg-soft)}.source-pill{display:inline-flex;max-width:128px;align-items:center;padding:2px 8px;overflow:hidden;color:var(--tn-text-2);background:var(--tn-bg-soft);border:1px solid var(--tn-border-light);border-radius:999px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:18px;text-overflow:ellipsis;white-space:nowrap}.log-detail-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.log-detail-section{display:grid;gap:8px}.log-detail-section h3{margin:0;color:var(--tn-text);font-size:14px;font-weight:600}.log-detail-message{margin:0;color:var(--tn-text);line-height:1.7}.page-header{display:flex;align-items:flex-start;flex-wrap:wrap;justify-content:space-between;gap:20px;min-width:0;margin:0}.page-title{margin:0;color:var(--tn-text);font-size:20px;line-height:1.25;font-weight:600;letter-spacing:0}.page-subtitle{margin:var(--tn-space-2) 0 0;max-width:760px;color:var(--tn-text-2);font-size:13px;line-height:1.6;font-weight:400}.page-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.auth-page{position:relative;display:flex;width:100%;min-height:100dvh;box-sizing:border-box;align-items:center;justify-content:center;padding:clamp(48px,8vh,96px) clamp(48px,8vw,160px);background:var(--tn-bg)}.auth-page:before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background-image:linear-gradient(to right,color-mix(in srgb,var(--tn-border-light) 44%,transparent) 1px,transparent 1px),linear-gradient(to bottom,color-mix(in srgb,var(--tn-border-light) 44%,transparent) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(ellipse at center,rgb(0 0 0 / .7),transparent 68%);mask-image:radial-gradient(ellipse at center,rgb(0 0 0 / .7),transparent 68%);content:"";opacity:.42;animation:auth-grid-drift 18s linear infinite}.auth-shell{position:relative;z-index:1;display:grid;width:min(100%,1328px);grid-template-columns:minmax(0,760px) minmax(400px,440px);gap:clamp(72px,8vw,128px);align-items:center}.auth-brand{display:grid;width:100%;max-width:760px;gap:var(--tn-section-gap);justify-self:start}.auth-brand-lockup{display:flex;align-items:center;gap:var(--tn-control-gap);animation:auth-rise-in .5s ease both}.auth-brand-lockup strong,.auth-brand-lockup span{display:block}.auth-brand-lockup strong{color:var(--tn-text-primary);font-size:18px;font-weight:700;line-height:1.15}.auth-brand-lockup span{color:var(--tn-text-tertiary);font-size:12px;font-weight:600;line-height:1.25}.auth-brand-mark{width:46px;height:46px;border-radius:var(--tn-radius-menu);font-size:13px;box-shadow:0 0 color-mix(in srgb,var(--tn-primary) 20%,transparent);animation:auth-mark-pulse 4.8s ease-in-out infinite}.auth-copy{display:grid;max-width:680px;gap:var(--tn-card-gap);animation:auth-rise-in .58s ease .08s both}.auth-brand h1{margin:0;color:var(--tn-text);font-size:clamp(44px,4vw,60px);line-height:1.04;font-weight:700;letter-spacing:0}.auth-brand p{margin:0;color:var(--tn-text-2);font-size:18px;line-height:1.7}.auth-brand-tags{display:flex;width:fit-content;flex-wrap:wrap;gap:calc(var(--tn-control-gap) * 1.5);padding-top:var(--tn-control-gap);animation:auth-rise-in .58s ease .16s both}.auth-brand-tags span{display:inline-flex;align-items:center;gap:var(--tn-control-gap);color:var(--tn-text-secondary);font-size:14px;line-height:1.4;transition:color .2s ease,transform .2s ease}.auth-brand-tags span:hover{color:var(--tn-primary);transform:translateY(-1px)}.auth-brand-tags span+span:before{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--tn-border-color);content:""}.auth-card{width:100%;justify-self:end;border:1px solid var(--tn-border-color);border-radius:var(--tn-radius-card);box-shadow:var(--tn-shadow-card);animation:auth-card-in .62s ease .12s both;transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease}.auth-card:hover{border-color:color-mix(in srgb,var(--tn-primary) 28%,var(--tn-border-color));box-shadow:var(--tn-shadow-card),0 12px 32px color-mix(in srgb,var(--tn-primary) 10%,transparent);transform:translateY(-2px)}.auth-card>.n-card-header{padding:24px 24px 10px}.auth-card>.n-card__content,.auth-card>.n-card-content{padding:18px 24px 24px}.auth-card-title{display:grid;gap:4px}.auth-card-title span{color:var(--tn-text-primary);font-size:20px;font-weight:650}.auth-card-title small{color:var(--tn-text-tertiary);font-size:13px;font-weight:400}.auth-form{display:grid;gap:var(--tn-control-gap)}.auth-form .n-button{margin-top:var(--tn-control-gap);transition:box-shadow .2s ease,transform .2s ease}.auth-form .n-button:hover{box-shadow:0 10px 24px color-mix(in srgb,var(--tn-primary) 22%,transparent);transform:translateY(-1px)}.auth-card-footer{display:flex;justify-content:space-between;gap:var(--tn-control-gap);margin-top:var(--tn-card-gap);font-size:12px}@keyframes auth-rise-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes auth-card-in{0%{opacity:0;transform:translateY(16px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes auth-mark-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--tn-primary) 18%,transparent)}50%{box-shadow:0 0 0 8px color-mix(in srgb,var(--tn-primary) 0%,transparent)}}@keyframes auth-grid-drift{0%{background-position:0 0}to{background-position:44px 44px}}@media(prefers-reduced-motion:reduce){.auth-page:before,.auth-brand-lockup,.auth-brand-mark,.auth-copy,.auth-brand-tags,.auth-card{animation:none}.auth-card,.auth-brand-tags span,.auth-form .n-button{transition:none}.auth-card:hover,.auth-brand-tags span:hover,.auth-form .n-button:hover{transform:none}}.content-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.9fr);gap:var(--tn-card-gap);margin:0}.content-grid>.full-span{grid-column:1 / -1}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--tn-card-gap)}.stat-card{min-height:156px;border:1px solid var(--tn-border-soft);border-left:0;border-radius:var(--tn-radius-card);background:var(--tn-card);box-shadow:var(--tn-shadow-card);transition:background-color .28s ease,border-color .28s ease,box-shadow .28s ease,color .28s ease}.stat-card.n-card{--n-color: var(--tn-card) !important;--n-border-color: var(--tn-border-soft) !important;--n-text-color: var(--tn-text-2) !important;--n-title-text-color: var(--tn-text) !important}.stat-card:hover,.module-card:hover{border-color:color-mix(in srgb,var(--tn-primary),var(--tn-border-color) 60%);box-shadow:var(--tn-shadow-card)}.stat-card-body{display:flex;min-height:116px;flex-direction:row-reverse;justify-content:space-between;gap:16px;align-items:flex-start}.stat-icon,.module-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;color:var(--tn-primary);background:var(--tn-bg-active);font-size:21px;flex:0 0 auto;transition:background-color .28s ease,color .28s ease}.tone-green .stat-icon{color:var(--tn-success);background:var(--tn-success-soft)}.tone-amber .stat-icon{color:var(--tn-warning);background:var(--tn-warning-soft)}.tone-red .stat-icon{color:var(--tn-error);background:var(--tn-error-soft)}.stat-title,.stat-desc,.module-version,.module-meta,.mono,.info-pre{color:var(--tn-text-2)}.stat-title{margin:0 0 18px;color:var(--tn-text-2);font-size:14px;font-weight:500;transition:color .28s ease}.stat-value{margin-top:0;color:var(--tn-text);font-size:30px;line-height:1;font-weight:600;transition:color .28s ease}.stat-desc{margin-top:18px;font-size:13px;font-weight:400;transition:color .28s ease}.toolbar{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:0;padding:14px;border:1px solid var(--tn-border-soft);border-radius:var(--tn-radius);background:var(--tn-card)}.toolbar .toolbar-action{margin-left:auto}.toolbar .n-select,.toolbar .n-input{width:190px}.module-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--tn-card-gap)}.module-status-list{display:grid;gap:var(--tn-card-gap);padding-top:var(--tn-control-gap)}.module-status-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:grid;width:100%;min-width:0;min-height:84px;align-content:center;gap:8px;padding:12px 16px;border:1px solid var(--tn-border-color);border-radius:var(--tn-card-radius);background:var(--tn-bg-container);color:inherit;cursor:pointer;text-align:left;transition:border-color .16s ease,background-color .16s ease}.module-status-item:hover{border-color:var(--tn-primary);background:var(--tn-bg-hover)}.module-status-top,.module-status-foot{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:var(--tn-control-gap)}.module-status-name{min-width:0;overflow:hidden;color:var(--tn-text-primary);font-size:15px;font-weight:600;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.module-status-item small{min-width:0;overflow:hidden;color:var(--tn-text-tertiary);font-size:12px;line-height:1.5;text-overflow:ellipsis;white-space:nowrap}.module-status-description{display:-webkit-box;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.module-status-empty{border:1px dashed var(--tn-border-color);border-radius:var(--tn-card-radius);color:var(--tn-text-tertiary);padding:var(--tn-card-padding);text-align:center}.module-card{height:100%;border:1px solid var(--tn-border-soft);border-radius:var(--tn-radius);background:var(--tn-card);box-shadow:none;transition:border-color .16s ease,box-shadow .16s ease}.module-card-head,.module-title-row,.module-line{display:flex;align-items:center;gap:12px}.module-main{min-width:0;flex:1}.module-title-row{justify-content:space-between}.module-title-row h3{margin:0;color:var(--tn-text);font-size:15px;font-weight:600}.module-desc{min-height:58px;margin:14px 0 12px;color:var(--tn-text-2);font-size:13px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.module-meta{display:grid;gap:8px;font-size:12px}.module-actions{margin:16px -16px -16px;padding:12px 16px;border-top:1px solid var(--tn-border-soft)}.info-pre{max-height:420px;overflow:auto;margin:0;padding:12px;border-radius:8px;background:#7084961f;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.55;white-space:pre-wrap}.settings-container{display:grid;min-height:560px;grid-template-columns:208px minmax(0,1fr);overflow:hidden;border:1px solid var(--tn-border-soft);border-radius:var(--tn-card-radius);background:var(--tn-card)}.settings-side{padding:var(--tn-card-gap) var(--tn-space-3);border-right:1px solid var(--tn-border-soft);background:color-mix(in srgb,var(--tn-card),var(--tn-bg) 35%)}.settings-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;width:100%;height:44px;align-items:center;gap:10px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:var(--tn-text-2);cursor:pointer;font-size:14px;font-weight:500;text-align:left}.settings-tab+.settings-tab{margin-top:4px}.settings-tab:hover{background:var(--tn-hover);color:var(--tn-text)}.settings-tab.active{background:var(--tn-primary-soft);color:var(--tn-primary);font-weight:600}.settings-tab-icon{display:inline-grid;width:18px;height:18px;place-items:center;font-size:18px}.settings-content{display:flex;min-width:0;flex-direction:column}.settings-content-head{padding:var(--tn-space-8) var(--tn-space-8) 0}.settings-content-head h2{margin:0;color:var(--tn-text);font-size:20px;line-height:1.25;font-weight:600}.settings-content-head p{margin:8px 0 0;color:var(--tn-text-2);font-size:13px;line-height:1.6}.settings-content-body{display:grid;gap:var(--tn-space-8);padding:var(--tn-space-8)}.settings-item{display:grid;max-width:720px;gap:10px}.settings-item-title{display:inline-flex;align-items:center;gap:6px;color:var(--tn-text);font-size:14px;font-weight:600}.settings-item-help{display:inline-grid;width:18px;height:18px;padding:0;place-items:center;border:1px solid var(--tn-border-soft);border-radius:50%;background:color-mix(in srgb,var(--tn-card),var(--tn-bg) 18%);color:var(--tn-text-2);cursor:help;font:inherit;font-size:12px;line-height:1;transition:border-color .16s ease,background-color .16s ease,color .16s ease}.settings-item-help:hover,.settings-item-help:focus-visible{border-color:color-mix(in srgb,var(--tn-primary),var(--tn-border) 45%);background:color-mix(in srgb,var(--tn-primary),transparent 90%);color:var(--tn-primary);outline:none}.settings-item-control{min-width:0}.setting-control{width:min(100%,560px)}.setting-number{width:180px}.settings-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--tn-space-5) var(--tn-space-8)}.settings-inline-note{color:var(--tn-text-2);font-size:13px}.settings-inline-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--tn-control-gap)}.notification-test-result{display:flex;flex-wrap:wrap;gap:var(--tn-control-gap)}.notification-settings-body{align-content:start}.notification-overview-card,.notification-control-panel,.notification-channel-card{max-width:920px;border:1px solid color-mix(in srgb,var(--tn-border),var(--tn-text) 8%);border-radius:var(--tn-card-radius);background:color-mix(in srgb,var(--tn-card),var(--tn-bg) 4%);box-shadow:var(--tn-shadow-card)}.notification-overview-card,.notification-channel-card{padding:var(--tn-card-gap)}.notification-overview-card,.notification-channel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--tn-card-gap)}.notification-overview-card h3,.notification-channel-card h3{margin:0;color:var(--tn-text);font-size:16px;font-weight:700}.notification-overview-card p,.notification-channel-card p{margin:6px 0 0;color:var(--tn-text-2);font-size:13px;line-height:1.6}.notification-overview-actions{display:inline-flex;flex-shrink:0;align-items:center;gap:var(--tn-control-gap)}.notification-control-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--tn-space-8);padding:var(--tn-card-gap)}.notification-channel-grid{display:grid;max-width:920px;gap:var(--tn-card-gap)}.notification-channel-card{display:grid;gap:var(--tn-card-gap);transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.notification-channel-card:hover{border-color:color-mix(in srgb,var(--tn-primary),var(--tn-border) 68%);background:color-mix(in srgb,var(--tn-card),var(--tn-primary) 3%)}.notification-channel-body{display:grid;gap:var(--tn-card-gap);padding-top:var(--tn-card-gap);border-top:1px solid var(--tn-border-soft)}.notification-channel-test{display:flex;flex-wrap:wrap;align-items:center;gap:var(--tn-control-gap);padding-top:var(--tn-card-gap);border-top:1px dashed var(--tn-border-soft)}.settings-actions{display:flex;gap:var(--tn-control-gap);justify-content:space-between;margin-top:auto;padding:var(--tn-card-gap) var(--tn-space-8);border-top:1px solid var(--tn-border-soft);background:color-mix(in srgb,var(--tn-card),var(--tn-bg) 24%)}.settings-block{display:grid;max-width:760px;gap:16px}.settings-block h3{margin:0;color:var(--tn-text);font-size:16px;font-weight:600}.about-hero{display:flex;align-items:center;gap:14px;max-width:760px;padding:var(--tn-card-gap);border:1px solid var(--tn-border-soft);border-radius:var(--tn-card-radius);background:color-mix(in srgb,var(--tn-card),var(--tn-bg) 24%)}.about-hero h3{margin:0;color:var(--tn-text);font-size:18px;font-weight:700}.about-hero p{margin:4px 0 0;color:var(--tn-text-2);font-size:13px}.settings-form{max-width:560px}.empty-state{padding:48px 16px;border:1px solid var(--tn-border-soft);border-radius:var(--tn-radius);background:var(--tn-card)}.n-card{border:1px solid var(--tn-border-soft);background:var(--tn-bg-container)}.n-data-table{min-width:0}.n-data-table .n-data-table-th{font-weight:500}@media(max-width:900px){.auth-page{padding:24px}.auth-shell{grid-template-columns:1fr;gap:var(--tn-section-gap)}.auth-brand{justify-self:stretch}.auth-brand h1{font-size:36px}.auth-card{max-width:520px;justify-self:center}.content-grid,.settings-container{grid-template-columns:1fr}.settings-side{display:flex;gap:8px;overflow-x:auto;border-right:0;border-bottom:1px solid var(--tn-border-soft)}.settings-tab{width:auto;min-width:96px;flex:0 0 auto}.notification-overview-card,.notification-channel-head{flex-direction:column}.notification-control-panel,.settings-field-grid{grid-template-columns:1fr}.notification-overview-actions,.settings-inline-actions{width:100%;justify-content:space-between}}@media(max-width:760px){.app-shell{display:block}.app-sidebar{display:none}.app-content{padding:16px}.app-header{padding:0 16px}.page-header{flex-direction:column}.toolbar .n-select,.toolbar .n-input{width:100%}.header-breadcrumb,.user-name,.account-copy small{display:none}.user-trigger{padding:0 5px}.settings-content-head,.settings-content-body{padding-left:18px;padding-right:18px}.settings-actions{padding:16px 18px}.setting-control,.setting-number{width:100%}.runtime-metric-list,.runtime-meta-grid{grid-template-columns:1fr}}
