:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#080b12;--surface:#0f172ac7;--surface-strong:#111827f0;--border:#38bdf82e;--border-soft:#94a3b829;--text:#f8fafc;--muted:#94a3b8;--primary:#38bdf8;--primary-2:#2563eb;--success:#22c55e;--danger:#ef4444;--shadow:0 24px 70px #00000073;--tone-success-fg:#bbf7d0;--tone-success-border:#22c55e59;--tone-danger-fg:#fecdd3;--tone-danger-border:#ef444461;--tone-danger-strong-fg:#fecaca;--tone-danger-strong-border:#ef444473;--tone-warning-fg:#fde68a;--tone-warning-border:#f59e0b73;--tone-neutral-fg:#cbd5e1;--tone-neutral-border:#94a3b847;--control-bg:#101620;--control-bg-hover:#151d29;--control-bg-active:#10283a;--control-border:#94a3b82e;--control-border-hover:#38bdf86b;--control-primary:#1f6fd6;--control-primary-hover:#287be6}*{box-sizing:border-box}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}*{scrollbar-width:thin;scrollbar-color:#38bdf861 transparent}::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background-color:#38bdf857;background-clip:padding-box;border:3px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background-color:#38bdf899}::-webkit-scrollbar-thumb:active{background-color:#38bdf8c7}::-webkit-scrollbar-corner{background:0 0}body{min-height:100vh;color:var(--text);background:#080b12;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow-x:hidden}button,input,select{font:inherit}button{border:1px solid var(--border);height:44px;color:var(--text);cursor:pointer;background:#0f172ab8;border-radius:8px;padding:0 14px;font-weight:800;transition:transform .2s,box-shadow .2s,border-color .2s}button:hover{border-color:#38bdf885;transform:translateY(-2px)}button:disabled{opacity:.45;cursor:not-allowed;transform:none}.primaryButton{background:var(--control-primary);border:0;width:100%;box-shadow:0 18px 38px #2563eb57}.primaryButton.sshInstallButton{background:#0f8a68;box-shadow:0 18px 38px #10b98142}.primaryButton.sshInstallButton:hover{border-color:#34d39999;box-shadow:0 20px 42px #10b98157}.primaryButton.installDoneButton,.primaryButton.installDoneButton:disabled{color:#dcfce7;box-shadow:none;cursor:default;opacity:1;background:#15803d47;border:1px solid #22c55e61;justify-content:center;align-items:center;gap:8px;display:inline-flex}.primaryButton.installDoneButton .lineIcon{width:16px;height:16px}.splash{align-content:center;place-items:center;gap:22px;min-height:100vh;display:grid}.splash img{filter:drop-shadow(0 0 28px #38bdf840);width:min(320px,72vw)}.connectionState{text-align:center;place-content:center;justify-items:center;width:min(460px,100% - 32px);min-height:100vh;margin:auto;display:grid}.connectionState img{width:min(280px,72vw);margin-bottom:28px}.connectionState h1{font-size:28px;line-height:1.2}.connectionState p{margin:0 0 22px}.connectionState .primaryButton{width:180px}.viewLoading{place-items:center;min-height:240px;display:grid}.viewLoading span{border:2px solid #94a3b833;border-top-color:var(--primary);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}.loader{background:#94a3b829;border-radius:999px;width:170px;height:5px;overflow:hidden}.loader:after{content:"";border-radius:inherit;background:linear-gradient(90deg, var(--primary), var(--primary-2));width:45%;height:100%;animation:1.3s ease-in-out infinite load;display:block}.setupShell{grid-template-columns:minmax(360px,.94fr) minmax(420px,1.06fr);align-items:center;gap:28px;min-height:100vh;padding:clamp(20px,4vw,54px);display:grid}.heroPanel,.wizardPanel,.loginCard,.panel,.metric{border:1px solid var(--border-soft);background:var(--surface);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);border-radius:14px}.heroPanel{align-content:center;min-height:720px;padding:44px;display:grid;position:relative;overflow:hidden}.brandGlow{filter:blur(18px);background:#38bdf80f;height:360px;animation:4.8s ease-in-out infinite pulse;position:absolute;inset:12% 6% auto}.heroLogo{object-fit:contain;filter:drop-shadow(0 0 28px #38bdf838);width:min(420px,82%);margin:0 auto 34px;animation:6s ease-in-out infinite floatLogo;position:relative}.eyebrow,.kicker{color:var(--primary);letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:900}h1{letter-spacing:0;margin:10px 0 14px;font-size:clamp(36px,5vw,64px);line-height:.95}h2{letter-spacing:0;margin:8px 0;font-size:28px}p{color:var(--muted);line-height:1.65}.signalGrid{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:34px;display:grid}.signalGrid div{border:1px solid var(--border-soft);background:#0206176b;border-radius:8px;padding:16px}.signalGrid span,.field>span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:800;display:block}.wizardPanel{padding:clamp(24px,3vw,42px);animation:.55s both panelIn}.setupWizardPanel{gap:16px;display:grid}.setupWizardTop{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.setupWizardTop h2{margin:6px 0 0;font-size:22px;line-height:1.2}.setupWizardTop>b{color:#bae6fd;background:#38bdf814;border:1px solid #38bdf838;border-radius:999px;place-items:center;min-width:52px;min-height:32px;font-size:12px;display:grid}.steps{gap:10px;margin-bottom:24px;display:flex}.steps span{background:linear-gradient(90deg, var(--primary), var(--primary-2));opacity:.75;border-radius:999px;flex:1;height:6px}.setupProgress{background:#94a3b81f;border-radius:999px;height:6px;margin:0;overflow:hidden}.setupProgress span{width:var(--setup-progress);opacity:1;flex:none;transition:width .28s}.setupTabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.setupTabs button{height:auto;min-height:42px;color:var(--muted);text-align:left;background:#02061757;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:8px;padding:8px 10px;display:grid}.setupTabs b{border:1px solid var(--border-soft);border-radius:999px;place-items:center;width:24px;height:24px;font-size:11px;display:grid}.setupTabs span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;font-weight:850;overflow:hidden}.setupTabs button.active{color:var(--text);background:#38bdf81f;border-color:#38bdf873}.setupTabs button.done{color:#bbf7d0;border-color:#22c55e3d}.formGrid{gap:18px;display:grid}.formGrid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.setupStage{gap:14px;animation:.22s both deployStageIn;display:grid}.setupStage[hidden]{display:none}.setupChecklist{flex-wrap:wrap;gap:8px;display:flex}.setupChecklist span{color:var(--muted);background:#02061747;border:1px solid #94a3b81f;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800}.setupChecklist span.ready{color:#bbf7d0;background:#22c55e14;border-color:#22c55e3d}.field{gap:8px;display:grid}.field input{border:1px solid var(--border-soft);width:100%;height:48px;color:var(--text);background:#0d111a;border-radius:8px;outline:none;padding:0 14px;transition:border-color .2s,box-shadow .2s,transform .2s;box-shadow:inset 0 1px #ffffff0a}.field input:focus{border-color:#38bdf8b8;transform:translateY(-1px);box-shadow:0 0 0 4px #38bdf81f,inset 0 1px #ffffff0f}.field input[type=number]{-moz-appearance:textfield}.field input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.field input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.telegramBox{border:1px solid var(--border);background:#0f172ab8;border-radius:10px;gap:14px;padding:16px;display:grid}.telegramBoxHead{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.telegramBoxHead p{margin:8px 0 0;font-size:13px;line-height:1.5}.setupState{border:1px solid var(--border-soft);color:var(--muted);background:#02061752;border-radius:999px;flex:none;padding:5px 9px;font-size:11px;font-weight:850}.setupState.active{color:#fde68a;background:#f59e0b14;border-color:#f59e0b47}.setupState.ready{color:#bbf7d0;background:#22c55e1a;border-color:#22c55e47}.setupTelegramSteps{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.setupTelegramSteps div{min-height:34px;color:var(--muted);background:#02061742;border:1px solid #94a3b81a;border-radius:8px;align-items:center;gap:7px;padding:6px 8px;font-size:12px;font-weight:800;display:flex}.setupTelegramSteps b{border:1px solid;border-radius:999px;place-items:center;width:20px;height:20px;font-size:10px;display:grid}.setupTelegramSteps div.active{color:#bae6fd;background:#38bdf814;border-color:#38bdf847}.setupTelegramSteps div.done{color:#bbf7d0;background:#22c55e14;border-color:#22c55e38}.buttonRow{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.telegramBox a{color:#7dd3fc;overflow-wrap:anywhere;font-size:13px;text-decoration:none}.setupLink{background:#02061752;border:1px solid #38bdf829;border-radius:8px;padding:10px 12px}.chatBadge{color:var(--muted);background:#0206177a;border-radius:8px;padding:10px 12px;font-size:13px}.chatBadge.ready{color:#bbf7d0;background:#22c55e1f}.setupReviewGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.setupReviewGrid div{border:1px solid var(--border-soft);background:#02061757;border-radius:8px;min-width:0;padding:12px}.setupReviewGrid span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:900;display:block}.setupReviewGrid b{overflow-wrap:anywhere;color:var(--text);margin-top:7px;display:block}.setupTwoFactor{background:#02061757;border:1px solid #38bdf82e;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:14px;display:flex}.setupTwoFactor.disabled{background:#0206173d;border-color:#94a3b81a}.setupTwoFactor>div{min-width:0}.setupTwoFactor b{color:var(--text)}.setupTwoFactor p{margin:6px 0 0;font-size:13px;line-height:1.5}.setupWizardActions{border-top:1px solid var(--border-soft);justify-content:flex-end;gap:10px;padding-top:14px;display:flex}.setupWizardActions .primaryButton{width:auto;min-width:180px}.statusLine{min-height:20px;color:var(--muted);margin:0;font-size:13px}.loginShell{place-items:center;min-height:100vh;padding:20px;display:grid}.loginCard{gap:18px;width:min(420px,100%);padding:34px;display:grid}.loginCard img{filter:drop-shadow(0 0 22px #38bdf842);width:154px;margin:0 auto 6px}.loginCard h1,.loginCard p{text-align:center;margin:0}.loginCard h1{font-size:32px}.loginCard p{color:var(--muted)}.linkButton{height:auto;color:var(--muted);background:0 0;border:0;justify-self:center;padding:2px;font-size:13px;font-weight:700;text-decoration:underline}.linkButton:hover{color:var(--primary);box-shadow:none;transform:none}.cliHint{word-break:break-all;border:1px solid var(--border-soft);color:#7dd3fc;background:#020617b3;border-radius:8px;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;display:block}.dashboard{grid-template-columns:250px 1fr;min-height:100vh;display:grid}aside{border-right:1px solid var(--border-soft);background:#020617ad;padding:22px}aside img{filter:drop-shadow(0 0 16px #38bdf833);width:130px;margin-bottom:28px;display:block}nav{gap:8px;display:grid}.navItem{min-width:0;position:relative}nav a{color:var(--muted);border-radius:8px;align-items:center;gap:11px;padding:10px 12px;text-decoration:none;transition:background .18s,color .18s;display:flex}.navItem>a{padding-right:44px}nav a:hover{color:var(--text);background:#38bdf812}nav a.active{color:var(--text);background:#38bdf81f}nav a.active .navIcon{color:var(--primary)}.navIcon{color:#8aa0bd;transition:color .18s;display:inline-flex}.navLabel{flex:auto;min-width:0;font-size:14px;font-weight:600}.navBadge{letter-spacing:0;text-align:center;color:#e2e8f0;cursor:pointer;background:#1e293be0;border:0;border-radius:7px;flex:none;justify-content:center;align-items:center;min-width:24px;height:24px;padding:0 6px;font-family:inherit;font-size:12px;font-weight:900;line-height:1;display:inline-flex;overflow:hidden;transform:translateZ(0);box-shadow:inset 0 1px #ffffff14,0 8px 20px #00000038}.navItem>.navBadge{z-index:1;margin-top:-10px;position:absolute;top:50%;right:8px}.navBadge:hover{filter:brightness(1.16)}.navBadge:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.navBadge.danger{color:#fecaca;background:#7f1d1d7a;box-shadow:inset 0 1px #ffffff14,0 0 10px #f871711f,0 8px 20px #00000038}.navBadge.warning{color:#fde68a;background:#92400e7a;box-shadow:inset 0 1px #ffffff14,0 0 10px #f59e0b1f,0 8px 20px #00000038}.navBadge.info{color:#bae6fd;background:#0369a17a;box-shadow:inset 0 1px #ffffff14,0 0 10px #38bdf81f,0 8px 20px #00000038}.navBadgeWindow{place-items:center;min-width:10px;height:1em;display:inline-grid;position:relative;overflow:hidden}.navBadgeNumber{will-change:transform, opacity;grid-area:1/1;display:block}.navBadge.rolling.up .navBadgeNumber.old{animation:.28s cubic-bezier(.2,.8,.2,1) both navBadgeOldUp}.navBadge.rolling.up .navBadgeNumber.current{animation:.28s cubic-bezier(.2,.8,.2,1) both navBadgeNewUp}.navBadge.rolling.down .navBadgeNumber.old{animation:.28s cubic-bezier(.2,.8,.2,1) both navBadgeOldDown}.navBadge.rolling.down .navBadgeNumber.current{animation:.28s cubic-bezier(.2,.8,.2,1) both navBadgeNewDown}.lineIcon{width:18px;height:18px}.iconButton .lineIcon{width:19px;height:19px}.content{min-width:0;padding:30px}header{justify-content:space-between;align-items:center;gap:20px;display:flex}.headerLeft{align-items:center;gap:14px;min-width:0;display:flex}.actions{gap:10px;display:flex}.iconButton.navToggle,.navBackdrop{display:none}.cards{flex-wrap:wrap;gap:14px;margin:24px 0;display:flex}.overviewCards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.overviewServerCards{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:14px;margin:0 0 16px;display:grid}.overviewServerCard{border:1px solid var(--border-soft);min-width:0;max-width:620px;box-shadow:var(--shadow);background:#0f172a94;border-radius:12px;gap:14px;padding:14px;display:grid}.overviewServerCardHead{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.overviewServerStatus{flex-wrap:wrap;justify-content:flex-end}.overviewServerCardHead>div{gap:4px;min-width:0;display:grid}.overviewServerCardHead b{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.overviewServerCardHead span:not(.status){color:var(--muted);font-size:12px;font-weight:700}.overviewServerLoadGrid{border-top:1px solid #94a3b81a;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.overviewResourceGauge,.overviewFlowMetric{min-width:0}.overviewServerLoadGrid>:nth-child(odd){border-right:1px solid #94a3b81a}.overviewServerLoadGrid>:nth-child(-n+2){border-bottom:1px solid #94a3b81a}.overviewResourceGauge{align-content:center;place-items:center;min-height:92px;padding:8px 10px;display:grid}.overviewGaugeGraphic{aspect-ratio:120/68;place-items:center;width:min(100%,118px);display:grid;position:relative}.overviewGaugeGraphic svg{width:100%;height:100%;display:block;overflow:visible}.overviewGaugeGraphic path{fill:none;vector-effect:non-scaling-stroke}.overviewGaugeTrack{stroke:#94a3b821;stroke-width:10px;stroke-linecap:round}.overviewGaugeThreshold{stroke-width:2px;stroke-linecap:butt}.overviewGaugeThreshold.threshold-normal{stroke:#22c55e8c;stroke-dasharray:64 36}.overviewGaugeThreshold.threshold-warning{stroke:#f59e0bb8;stroke-dasharray:19 81;stroke-dashoffset:-65px}.overviewGaugeThreshold.threshold-danger{stroke:#ef4444c7;stroke-dasharray:15 85;stroke-dashoffset:-85px}.overviewGaugeValue{stroke:#22c55e;stroke-width:8px;stroke-linecap:round;transition:stroke-dasharray .3s,stroke .2s}.overviewResourceGauge.tone-warning .overviewGaugeValue{stroke:#f59e0b}.overviewResourceGauge.tone-danger .overviewGaugeValue{stroke:#ef4444}.overviewResourceGauge.is-empty .overviewGaugeThreshold{opacity:.35}.overviewGaugeReading{justify-items:center;line-height:1;display:grid;position:absolute;inset:auto 0 4px}.overviewGaugeReading b{color:var(--text);font-variant-numeric:tabular-nums;font-size:15px;font-weight:720}.overviewGaugeReading small,.overviewFlowMetric>small{color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:800}.overviewGaugeReading small{margin-top:4px}.overviewGaugeDetail{max-width:100%;color:var(--muted);font-variant-numeric:tabular-nums;text-align:center;text-overflow:ellipsis;white-space:nowrap;margin-top:-1px;font-size:9px;font-weight:700;overflow:hidden}.overviewFlowMetric{align-content:center;gap:5px;min-height:72px;padding:10px;display:grid}.overviewFlowLines{gap:4px;min-width:0;display:grid}.overviewFlowLines>span{white-space:nowrap;grid-template-columns:3px 15px minmax(0,1fr) minmax(48px,auto);align-items:baseline;gap:5px;min-width:0;transition:opacity .2s;display:grid}.overviewFlowLines i{opacity:.72;background:#38bdf8;border-radius:2px;align-self:stretch;min-height:14px}.overviewFlowLines .tone-out i{background:#f59e0b}.overviewFlowLines strong{color:var(--muted);font-size:9px;font-weight:800}.overviewFlowLines b{min-width:0;color:var(--text);font-variant-numeric:tabular-nums;text-overflow:ellipsis;font-size:10px;font-weight:650;overflow:hidden}.overviewFlowLines em{min-width:0;color:var(--muted);font-variant-numeric:tabular-nums;text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-style:normal;font-weight:650;overflow:hidden}.overviewFlowEmpty{color:var(--muted);font-size:15px;font-weight:650}.overviewGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px;display:grid}.overviewGridSingle{grid-template-columns:minmax(0,1fr)}.overviewList{gap:8px;display:grid}.overviewList.compact{gap:4px}.overviewListRow{background:#02061752;border:1px solid #94a3b814;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.overviewListRow>div{gap:3px;min-width:0;display:grid}.overviewListRow b{font-size:14px}.overviewListRow span{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.overviewTimelinePanel{box-shadow:var(--shadow);background:#0f172a94;border:1px solid #94a3b821;border-radius:12px;gap:16px;margin:0 0 16px;padding:18px 20px;display:grid;position:relative}.overviewTimelineHead{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.overviewTimelineHead h2{margin:0;font-size:16px}.overviewTimelineHead p{color:var(--muted);margin:5px 0 0;font-size:12px;font-weight:600}.overviewTimelineStats{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.overviewTimelineStat{height:32px;color:var(--muted);text-transform:uppercase;background:#02061761;border:1px solid #94a3b821;border-radius:999px;align-items:center;gap:6px;padding:0 11px;font-size:11px;font-weight:800;display:inline-flex}.overviewTimelineStat b{color:var(--text);font-variant-numeric:tabular-nums;font-size:13px}.overviewTimelineStat.hot{color:#fecaca;border-color:#f8717152}.overviewTimelineStat.warm{color:#fed7aa;border-color:#fb923c57}.overviewTimelineStat{cursor:pointer;transition:border-color .14s,background .14s}.overviewTimelineStat:hover,.overviewTimelineStat:focus-visible{background:#02061794;border-color:#94a3b84d;outline:none}.overviewTimelineStatWrap{display:inline-flex;position:relative}.overviewTimelineRail{gap:8px;padding-top:4px;display:grid;position:relative;overflow:visible}.overviewTimelineBars{grid-template-columns:repeat(48,minmax(4px,1fr));align-items:end;gap:clamp(4px,.72vw,9px);min-height:40px;display:grid}.overviewTimelineBeat{cursor:pointer;background:0 0;border:0;border-radius:999px;flex-direction:column;min-width:0;height:30px;padding:0;transition:transform .14s,filter .14s,box-shadow .14s,height .14s;display:flex;position:relative;overflow:hidden;box-shadow:0 0 0 1px #ffffff08,0 0 14px #4ade801a}.overviewTimelineBeat:hover,.overviewTimelineBeat:focus-visible,.overviewTimelineBeat.active{filter:saturate(1.12)brightness(1.08);outline:none;height:38px;transform:translateY(-4px)}.overviewTimelineBeat.tone-up{opacity:.5;box-shadow:none}.overviewTimelineBeat.tone-up:hover,.overviewTimelineBeat.tone-up:focus-visible,.overviewTimelineBeat.tone-up.active{opacity:.85}.overviewTimelineBeat.tone-info{box-shadow:0 0 14px #38bdf826}.overviewTimelineBeat.tone-update{box-shadow:0 0 15px #fb923c2e}.overviewTimelineBeat.tone-warning{box-shadow:0 0 15px #f59e0b33}.overviewTimelineBeat.tone-danger{box-shadow:0 0 18px #ef44443d}.overviewTimelineBeatSegment{pointer-events:none;flex:1 1 0;width:100%;min-height:0}.overviewTimelineBeatSegment.tone-up{background:#22c55e}.overviewTimelineBeatSegment.tone-info{background:#38bdf8}.overviewTimelineBeatSegment.tone-update{background:#fb923c}.overviewTimelineBeatSegment.tone-warning{background:#f59e0b}.overviewTimelineBeatSegment.tone-danger{background:#ef4444}.overviewTimelineBeat.muted{opacity:.18;filter:grayscale(.48)saturate(.45);box-shadow:none;cursor:default}.overviewTimelineBeat.muted:hover,.overviewTimelineBeat.muted:focus-visible{filter:grayscale(.48)saturate(.45);outline:none;height:30px;transform:none}.overviewTimelineScale{color:#cbd5e1;font-variant-numeric:tabular-nums;justify-content:space-between;align-items:flex-start;gap:12px;font-size:12px;display:flex}.overviewTimelineScale span{white-space:nowrap;display:block}.overviewTimelineRange{background:0 0;border:0;align-items:center;gap:0;height:32px;padding:0;display:inline-flex;position:relative}.overviewTimelineRange .overviewRangePicker{color:#dbeafe;background:#02061747;border-color:#94a3b821;border-radius:999px;justify-content:center;min-width:64px;height:32px;padding:0 10px;position:static;inset:auto}.overviewTimelineRange .overviewRangeMenu{min-width:76px;inset:calc(100% + 7px) 0 auto auto}.overviewTimelineTooltip{z-index:20;pointer-events:none;background:#0f172afa;border:1px solid #94a3b838;border-radius:8px;width:min(280px,82vw);padding:12px;position:absolute;bottom:calc(100% + 8px);transform:translate(-50%);box-shadow:0 18px 46px #00000057,0 0 0 1px #ffffff08}.timelineBeatTooltip{position:fixed;bottom:auto;right:auto}.timelineBeatTooltip.below:after{border:0;border-top:1px solid #94a3b838;border-left:1px solid #94a3b838;top:-6px;bottom:auto}.overviewTimelineTooltip:after{content:"";background:#0f172afa;border-bottom:1px solid #94a3b838;border-right:1px solid #94a3b838;width:10px;height:10px;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)rotate(45deg)}.overviewTimelineTooltip b{color:#86efac;letter-spacing:.04em;text-transform:uppercase;margin-bottom:4px;font-size:14px;font-weight:900;display:block}.overviewTimelineTooltip.tone-danger b{color:#fda4af}.overviewTimelineTooltip.tone-warning b{color:#fde68a}.overviewTimelineTooltip.tone-update b{color:#fdba74}.overviewTimelineTooltip.tone-info b{color:#bae6fd}.overviewTimelineTooltip>span,.overviewTimelineTooltip small{color:#cbd5e1;font-size:12px;display:block}.overviewTimelineTooltip ul{gap:7px;margin:10px 0 0;padding:0;list-style:none;display:grid}.overviewTimelineTooltip li{gap:2px;min-width:0;display:grid}.overviewTimelineTooltip li strong{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:800;overflow:hidden}.overviewTimelineTooltip li em{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-style:normal;overflow:hidden}.overviewTimelineStatTooltip{width:min(230px,80vw);inset:calc(100% + 8px) 0 auto auto;transform:none}.overviewTimelineStatTooltip:after{border:0;border-top:1px solid #94a3b838;border-left:1px solid #94a3b838;inset:-6px 18px auto auto;transform:rotate(45deg)}.overviewTimelineStatTooltip ul{gap:5px}.overviewTimelineStatTooltip li{grid-auto-flow:column;justify-content:start;align-items:baseline;gap:6px}.overviewTimelineStatTooltip li strong{flex:none}.overviewTimelineStatTooltip li strong.tone-danger{color:#fda4af}.overviewTimelineStatTooltip li strong.tone-warning{color:#fde68a}.overviewTimelineStatTooltip li strong.tone-update{color:#fdba74}.modalPanel.formModal.timelineEventsModal{width:min(620px,96vw)}.timelineEventList{gap:8px;display:grid}.timelineEventRow{background:#0206176b;border:1px solid #94a3b821;border-left:3px solid #94a3b859;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.timelineEventRow.tone-up{border-left-color:#4ade80}.timelineEventRow.tone-danger{border-left-color:#ef4444}.timelineEventRow.tone-warning{border-left-color:#f59e0b}.timelineEventRow.tone-update{border-left-color:#fb923c}.timelineEventRow.tone-info{border-left-color:#38bdf8}.timelineEventRow div{gap:3px;min-width:0;display:grid}.timelineEventRow b,.timelineEventRow span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.timelineEventRow b{color:var(--text);font-size:13px}.timelineEventRow span,.timelineEventRow time{color:var(--muted);font-size:12px}.timelineEventRow time{font-variant-numeric:tabular-nums}.overviewTimelineFooter{justify-content:space-between;align-items:center;gap:12px;display:flex}.overviewTimelineLegend{color:var(--muted);text-transform:uppercase;flex-wrap:wrap;gap:8px 14px;font-size:11px;font-weight:800;display:flex}.overviewTimelineLegend button{min-height:24px;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:6px;padding:0;transition:color .14s,opacity .14s,filter .14s;display:inline-flex}.overviewTimelineLegend button:hover,.overviewTimelineLegend button:focus-visible{color:#e5e7eb;outline:none}.overviewTimelineLegend button:focus-visible{box-shadow:0 0 0 3px #38bdf81f}.overviewTimelineLegend button.muted{opacity:.38;filter:grayscale(.45)saturate(.55)}.overviewTimelineLegend button.muted:hover,.overviewTimelineLegend button.muted:focus-visible{opacity:.56}.overviewTimelineLegend i{border-radius:999px;width:9px;height:9px}.overviewTimelineLegend .tone-up{background:#4ade80}.overviewTimelineLegend .tone-danger{background:#ef4444}.overviewTimelineLegend .tone-warning{background:#f59e0b}.overviewTimelineLegend .tone-update{background:#fb923c}.overviewTimelineLegend .tone-info{background:#38bdf8}.metric{flex:180px;justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:14px 18px;display:flex}.metric span{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.metric b{flex:none;margin-top:0;font-size:24px}.metric.success b{color:var(--success)}.metric.danger b{color:var(--danger)}.metric.clickable{cursor:pointer;transition:border-color .15s,background .15s}.metricValueGroup{flex:none;align-items:baseline;gap:8px;display:flex}.metricDelta{font-variant-numeric:tabular-nums;flex:none;font-size:11px;font-weight:700}.metricDelta.up{color:var(--tone-danger-fg)}.metricDelta.down{color:var(--tone-success-fg)}.panelHead{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}:is(.panelHead:has(.scopeSelect),.panelHead:has(.filterSelects)){margin-bottom:12px}.panelHead h2{letter-spacing:0;margin:0;font-size:18px;line-height:1.25}.panelHead span{color:var(--muted);font-size:13px}.panelHead>.rowActions:only-child,.panelHead>.iconButton:only-child,.panelHead>.small:only-child,.panelHead>.scopeSelect:only-child{margin-left:auto}.deployTemplateMeta{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:900}.deployTemplatesPanel .panelHead span{font-size:12px}.deployFilterBar{justify-content:space-between;align-items:center;gap:12px;padding:0 0 12px;display:flex}.deployFilterBar .segmented{border:1px solid var(--border-soft);background:#0206177a;border-radius:8px;gap:4px;padding:4px;display:flex}.deployFilterBar .segmented button{height:28px;color:var(--muted);background:0 0;border:0;padding:0 9px;font-size:12px;font-weight:500}.deployFilterBar .segmented button.active{color:var(--text);background:#38bdf81f}.deployFilterBar .segmented .issueFilter{box-shadow:-5px 0 0 -4px var(--border-soft);margin-left:5px}.deployCategories{flex:0 auto}.serversFilterBar{min-width:0;padding:0}.serverTagFilters{max-width:100%;overflow-x:auto}.deploySearch{border:1px solid var(--border-soft);width:min(300px,100%);height:36px;color:var(--text);background:#0f172ab8;border-radius:8px;outline:none;padding:0 12px;font-weight:500}.deploySearch::placeholder{font-weight:500}.deploySearch:focus{border-color:#38bdf8b8;box-shadow:0 0 0 4px #38bdf81f}.deploySearchTools{justify-content:flex-start;align-items:center;gap:8px;min-width:min(360px,100%);display:flex}.deployTemplateSettingsButton{color:#bae6fd;background:#0f172ab8;flex:none;width:36px;height:36px}.deployTemplatesGrid{grid-template-columns:repeat(auto-fill,minmax(280px,360px));align-items:start;gap:10px;display:grid}.deployTemplateCard{border:1px solid var(--border-soft);background:#0f172a94;border-radius:8px;gap:11px;min-height:176px;padding:12px;transition:transform .18s,border-color .18s,background .18s;display:grid;box-shadow:0 10px 26px #00000029}.deployTemplateCard:hover{background:#111827c7;border-color:#38bdf85c;transform:translateY(-2px)}.deployTemplateTop,.deployTemplateActions,.deployReviewStrip{justify-content:space-between;align-items:center;gap:10px;display:flex}.deployTemplateIcon{color:#bae6fd;background:#38bdf81c;border:1px solid #38bdf847;border-radius:8px;place-items:center;width:34px;height:34px;display:grid}.deployTemplateIcon .lineIcon{width:18px;height:18px}.deployTemplateCopy{gap:5px;display:grid}.deployTemplateCopy h3{letter-spacing:0;margin:0;font-size:15px}.deployTemplateCopy p{color:var(--muted);margin:0;font-size:12px;line-height:1.45}.deployTemplateMeta{letter-spacing:.04em;flex-wrap:wrap;gap:6px;margin-top:auto;font-size:10px;font-weight:700;display:flex}.deployTemplateMeta span{background:#02061747;border:1px solid #94a3b81a;border-radius:999px;align-items:center;min-height:18px;padding:1px 6px;display:inline-flex}.templateCardWarning{color:#fdba74;margin:8px 0 0;font-size:11px;line-height:1.4}.templateCardWarning.subtle{color:var(--muted)}.deployTemplateActions{justify-content:flex-end}.templateSettings{gap:12px}.templateImportPanel,.templateUrlImport,.templatePackageRow{border:1px solid var(--border-soft);background:#02061757;border-radius:8px}.templateImportPanel{justify-content:space-between;align-items:center;gap:14px;padding:14px;display:flex}.templateImportPanel div:first-child{gap:5px;display:grid}.templateImportPanel b,.templatePackageRow b{color:var(--text);font-size:14px}.templateImportPanel span,.templatePackageRow span{color:var(--muted);font-size:12px}.templateImportActions,.templateUrlImport{align-items:end;gap:10px;display:flex}.templateUrlImport{padding:12px}.templateUrlImport .field{flex:auto}.templatePackageList{gap:8px;max-height:420px;padding-right:4px;display:grid;overflow:auto}.templatePackageRow{grid-template-columns:34px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px;animation:.18s both panelIn;display:grid}.templatePackageRow>div:nth-child(2){gap:4px;min-width:0;display:grid}.templatePackageRow>div:nth-child(2) span{overflow-wrap:anywhere}.templatePackageRow>div:nth-child(2) small{color:var(--muted);overflow-wrap:anywhere;font-size:11px;line-height:1.35}.templatePackageTags{align-items:center;gap:6px;display:flex}.templatePackageTags>span:not(.status){min-height:22px;color:var(--muted);background:#0f172a8c;border:1px solid #94a3b81f;border-radius:999px;align-items:center;padding:2px 7px;font-size:11px;font-weight:800;display:inline-flex}.templatePackageRow .rowActions{justify-content:flex-end}.templatePackageRow .iconButton.danger:not(:disabled){color:#fecaca;border-color:#f871713d}.templatePackageRow .iconButton:disabled{opacity:.38}.modalPanel.formModal.deployInstallModal{width:min(1180px,96vw);max-height:min(940px,96vh)}.deployFieldGroups{gap:12px;display:grid}.deployFieldGroup{border:1px solid var(--border-soft);background:#02061757;border-radius:8px;gap:12px;min-width:0;padding:12px;display:grid}.deployFieldGroupHead{gap:4px;display:grid}.deployFieldGroupHead span{color:var(--text);font-size:13px;font-weight:850}.deployFieldGroupHead p{color:var(--muted);margin:0;font-size:12px;line-height:1.45}.deployInstallGrid{grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));align-items:start;gap:12px;display:grid}.deployField{align-content:start;gap:7px}.deployField em,.deployField small{color:var(--muted);letter-spacing:0;text-transform:none;font-style:normal;line-height:1.4;display:block}.deployField em{margin-top:0;font-size:12px}.deployField small{opacity:.82;margin-top:-2px;font-size:11px}.deployFileField input[type=file]{height:auto;color:var(--muted);padding:10px}.deployFileList{flex-wrap:wrap;gap:6px;display:flex}.deployFileList .small{color:#bfdbfe;background:#0f172ab8;min-height:28px;padding:4px 8px}.deployFileList .lineIcon{width:14px;height:14px}.deploySelectField .selectTrigger{background:#0f172a5c;height:46px}.deploySelectField .selectMenu{border-radius:8px}.deployMultiField{gap:8px}.deployCheckboxGrid{grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr));gap:8px;display:grid}.deployCheckboxOption{border:1px solid var(--border-soft);min-height:54px;color:var(--muted);text-align:left;background:#0f172a5c;border-radius:8px;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:8px;padding:9px 10px;display:grid}.deployCheckboxOption:hover{box-shadow:none;border-color:#38bdf85c;transform:none}.deployCheckboxOption.active{color:var(--text);background:#38bdf81a;border-color:#38bdf88a}.deployCheckboxOption b{overflow-wrap:anywhere;min-width:0;font-size:13px}.deployCheckboxOption em{color:var(--muted);grid-column:2;margin:-3px 0 0;font-size:11px;font-style:normal;line-height:1.35}.deployFreeformRow{gap:8px;display:flex}.deployFreeformRow input{border:1px solid var(--border-soft);min-width:0;height:40px;color:var(--text);background:#0f172a5c;border-radius:8px;flex:1;padding:0 12px}.deploySelectedOptions{flex-wrap:wrap;gap:6px;display:flex}.deploySelectedOptions .small{color:#bfdbfe;background:#0f172ab8;min-height:28px;padding:4px 8px}.deploySelectedOptions span{color:var(--muted);font-size:13px;line-height:1}.deployToggleField{border:1px solid var(--border-soft);background:#0f172a5c;border-radius:8px;align-content:center;align-items:center;gap:8px;min-height:84px;padding:11px 12px}.deployToggleField em,.deployToggleField small{color:var(--muted);letter-spacing:0;text-transform:none;grid-column:1/-1;margin:0;font-size:12px;font-style:normal;line-height:1.4}.deployToggleField small{opacity:.82;font-size:11px}.deployReviewStrip{flex-wrap:wrap;justify-content:flex-start}.deployReviewStrip div{color:#bbf7d0;background:#22c55e17;border:1px solid #22c55e3d;border-radius:999px;align-items:center;gap:7px;min-height:30px;padding:5px 9px;font-size:12px;font-weight:800;display:inline-flex}.deployReviewStrip .lineIcon{width:15px;height:15px}.deployPreviewSummary{grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:10px;display:grid}.deployPreviewCard{border:1px solid var(--border-soft);background:#0206175c;border-radius:8px;gap:7px;min-width:0;padding:11px;display:grid}.deployPreviewCard.warning{background:#78350f1f;border-color:#f59e0b3d}.deployPreviewCard>span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:900}.deployPreviewCard>b{color:var(--text);font-size:13px}.deployPreviewCard p,.deployPreviewCard ul{color:var(--muted);margin:0;font-size:11px;line-height:1.45}.deployPreviewCard ul{gap:4px;padding:0;list-style:none;display:grid}.deployPreviewCard li{overflow-wrap:anywhere;min-width:0}.deployPreviewCard em{color:var(--faint);font-style:normal}.deployPreviewCard pre{color:#dbeafe;background:#020617b3;border:1px solid #94a3b81a;border-radius:8px;max-height:150px;margin:0;padding:8px;font-size:11px;line-height:1.45;overflow:auto}.deployInstallProgress .reviewScanBar>span{box-shadow:0 0 16px #38bdf83d}.deployWizard{gap:16px}.deployWizardSteps{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.deployWizardSteps button{text-align:left;height:auto;min-height:48px;color:var(--muted);background:#0206175c;grid-template-columns:26px minmax(0,1fr);align-items:center;gap:8px;padding:8px 10px;display:grid}.deployWizardSteps button b{border:1px solid var(--border-soft);width:26px;height:26px;color:var(--muted);border-radius:999px;place-items:center;font-size:12px;display:grid}.deployWizardSteps button span{overflow-wrap:anywhere;min-width:0;font-size:12px;font-weight:900;line-height:1.2}.deployWizardSteps button.active{color:var(--text);background:#38bdf81f;border-color:#38bdf87a;box-shadow:0 0 26px #38bdf81a}.deployWizardSteps button.active b{color:#e0f2fe;background:#38bdf829;border-color:#38bdf89e}.deployWizardSteps button.done{color:#bbf7d0;border-color:#22c55e42}.deployWizardSteps button.done b{color:#bbf7d0;background:#22c55e1f;border-color:#22c55e61}.deployWizardStage{gap:14px;animation:.24s both deployStageIn;display:grid}.deployConnectionPanel,.deployComposeHead,.deployWizardActions{justify-content:space-between;align-items:center;gap:12px;display:flex}.deployConnectionState,.deployComposeHead>div{border:1px solid var(--border-soft);background:#02061757;border-radius:8px;flex:1;min-width:0;padding:11px 12px}.deployConnectionState span,.deployComposeHead span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:900;display:block}.deployConnectionState b,.deployComposeHead b{overflow-wrap:anywhere;color:var(--text);margin-top:5px;display:block}.deployConnectionState.active{border-color:#38bdf86b;box-shadow:0 0 0 4px #38bdf814}.deployConnectionState.ready{background:#22c55e14;border-color:#22c55e5c}.deployTestTerminal{max-height:170px;overflow:auto}.deployEnvTable{border:1px solid var(--border-soft);background:#0206173d;border-radius:8px;gap:8px;max-height:430px;padding:10px;display:grid;overflow:auto}.deployEnvHead,.deployEnvRow{grid-template-columns:minmax(190px,.8fr) minmax(220px,1.2fr) 44px;align-items:center;gap:8px;display:grid}.deployEnvHead{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;padding:0 8px 2px;font-size:11px;font-weight:900}.deployEnvRow{background:#0f172a6b;border:1px solid #94a3b814;border-radius:8px;padding:8px}.deployEnvRow.template{background:#0f172a85}.deployEnvRow input{border:1px solid var(--border-soft);width:100%;min-width:0;height:38px;color:var(--text);background:#0206177a;border-radius:8px;padding:0 10px;font-weight:750}.deployEnvRow input:focus{border-color:#38bdf88f;outline:none;box-shadow:0 0 0 3px #38bdf817}.deployEnvRow input[readonly]{color:#bae6fd;background:#38bdf814}.deployEnvKey{align-items:center;gap:8px;min-width:0;display:flex}.deployEnvKey span{color:#bae6fd;letter-spacing:.05em;text-transform:uppercase;background:#38bdf814;border:1px solid #38bdf833;border-radius:999px;flex:none;align-items:center;min-height:22px;padding:2px 7px;font-size:10px;font-weight:900;display:inline-flex}.deployComposeEditor{background:#020617db;border:1px solid #38bdf83d;border-radius:8px;height:min(56vh,520px);min-height:360px;overflow:hidden;box-shadow:inset 0 1px #94a3b80f}.deployComposeEditor .cm-editor{height:100%;min-height:360px;color:#dbeafe!important;background:#020617eb!important}.deployComposeEditor .cm-scroller{height:100%;background:0 0!important;overflow:auto!important}.deployComposeEditor .cm-content{caret-color:#7dd3fc;min-width:max-content;color:#dbeafe!important;white-space:pre!important}.deployComposeEditor .cm-line{color:#dbeafe;white-space:pre!important}.deployComposeEditor .cm-line span{color:inherit;font-size:inherit;font-weight:inherit;letter-spacing:0;text-transform:none;display:inline}.deployComposeEditor .cm-gutters{color:var(--muted)!important;background:#0f172ad6!important;border-right:1px solid #94a3b81a!important}.deployComposeEditor .cm-activeLine{background:#38bdf814!important}.deployComposeEditor .cm-activeLineGutter{color:#bae6fd!important;background:#38bdf81a!important}.deployComposeEditor .cm-selectionBackground,.deployComposeEditor.cm-focused .cm-selectionBackground{background:#38bdf847!important}.deployComposeEditor .cm-tooltip,.deployComposeEditor .cm-tooltip-autocomplete{border-color:var(--border-soft)!important;color:var(--text)!important;background:#0f172a!important}.deployWizardActions{border-top:1px solid var(--border-soft);justify-content:flex-end;padding-top:14px}.deployWizardActions .primaryButton{width:auto;min-width:180px}@keyframes deployStageIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes navBadgeOldUp{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-105%)}}@keyframes navBadgeNewUp{0%{opacity:0;transform:translateY(105%)}to{opacity:1;transform:translateY(0)}}@keyframes navBadgeOldDown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(105%)}}@keyframes navBadgeNewDown{0%{opacity:0;transform:translateY(-105%)}to{opacity:1;transform:translateY(0)}}.auditFilterHead{margin-bottom:12px}.containerList{gap:8px;display:grid}.containerTable{gap:6px;display:grid;overflow:auto hidden}.containerTableHead{color:var(--muted);letter-spacing:.07em;grid-template-columns:minmax(160px,1fr) minmax(110px,.7fr) 64px 80px 118px 118px minmax(150px,232px);align-items:center;gap:8px;padding:4px 12px;font-size:11px;font-weight:800;display:grid}.containerTableHead.withServer{grid-template-columns:minmax(160px,1fr) 90px minmax(110px,.7fr) 64px 80px 118px 118px minmax(150px,232px)}.sortHeader{height:auto;color:inherit;font:inherit;letter-spacing:inherit;text-transform:uppercase;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:4px 2px;font-weight:900;display:inline-flex}.sortHeader:hover{box-shadow:none;color:var(--text);transform:none}.sortHeader.center{justify-content:center}.sortHeader.active{color:var(--primary)}.sortHeader:focus{outline:none}.sortHeader:focus-visible{color:var(--primary);text-underline-offset:3px;outline:none;text-decoration:underline}.sortArrow{opacity:.85;min-width:8px;font-size:9px}.centerCell{justify-content:center;align-items:center;display:flex}.metricCell{justify-content:flex-start;align-items:center;display:flex}.updateInline{box-sizing:border-box;color:#fde68a;background:#f59e0b1a;border:1px solid #f59e0b73;border-radius:999px;justify-content:center;align-items:center;gap:4px;height:30px;min-height:30px;padding:5px 8px;font-size:11px;font-weight:500;display:inline-flex}.containerRow{background:#0206177a;border-radius:10px;grid-template-columns:1fr 110px 110px;align-items:center;gap:18px;min-height:76px;padding:12px;display:grid}.containerIdentity b{color:var(--text);font-size:14px;line-height:1.2;display:block}.containerIdentity span{color:#73839d;word-break:break-word;margin-top:5px;font-size:12px;line-height:1.25;display:block}.status{border:1px solid var(--border-soft);min-height:30px;color:var(--muted);text-align:center;background:#0f172ab8;border-radius:999px;justify-content:center;align-items:center;padding:5px 10px;font-size:11px;font-weight:500;display:inline-flex}.status.completed,.status.healthy,.status.resolved,.status.online,.status.low,.status.running,.status.up,.status.http{color:var(--tone-success-fg);border-color:var(--tone-success-border)}.status.unhealthy,.status.failed,.status.available,.status.active,.status.offline,.status.error,.status.down{color:var(--tone-danger-fg);border-color:var(--tone-danger-border)}.status.offline{color:#fee2e2;background:#7f1d1d4d;border-color:#f871719e;box-shadow:inset 0 0 0 1px #f8717114}.status.registered,.status.warning,.status.queued,.status.interrupted,.status.medium,.status.pending,.status.tcp{color:var(--tone-warning-fg);border-color:var(--tone-warning-border)}.status.high{color:var(--tone-danger-strong-fg);border-color:var(--tone-danger-strong-border)}.status.exited,.status.paused,.status.ping,.status.dns,.status.ssh{color:var(--tone-neutral-fg);border-color:var(--tone-neutral-border)}.status.updatable{color:#fed7aa;background:#7c2d1233;border-color:#f973167a}.status.maintenance{color:#c4b5fd;background:#4c1d952e;border-color:#8b5cf670}.status.ci-job{color:#a5f3fc;background:#0891b21f;border-color:#22d3ee61}nav a{cursor:pointer}button.small{height:34px;padding:0 12px;font-size:13px;font-weight:700}button.small.active{color:var(--text);border-color:#38bdf899}button.small.speedButton{color:#cffafe;background:#082f496b;border-color:#22d3ee6b}button.small.agentUpdateButton{color:#fed7aa;background:#78350f57;border-color:#f59e0b94;box-shadow:0 0 18px #f59e0b1f}.containerRow.wide{grid-template-columns:minmax(160px,1fr) minmax(110px,.7fr) 64px 80px 118px 118px minmax(150px,232px);gap:8px}.containerRow.wide.withServer{grid-template-columns:minmax(160px,1fr) 90px minmax(110px,.7fr) 64px 80px 118px 118px minmax(150px,232px);gap:8px}.serverCell,.serviceCell{color:#9fb4d4;text-overflow:ellipsis;white-space:nowrap;align-self:center;min-width:0;font-size:13px;overflow:hidden}.serviceCell{display:block}.serviceCell b,.serviceCell span{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.serviceCell b{color:inherit;font-size:inherit;font-weight:500}.serviceCell span{color:var(--muted);font-size:11px;font-weight:700}.containerState{scrollbar-width:none;flex-wrap:nowrap;gap:6px;display:flex;overflow-x:auto}.containerState::-webkit-scrollbar{width:0;height:0}.containerState.centerCell,.containerState{justify-content:flex-start}.metricCell{color:var(--muted);text-align:right;font-size:13px}.miniMeter{align-items:center;gap:10px;min-width:0;display:inline-flex}.miniMeterTrack{background:#0f172ac7;border:1px solid #94a3b824;border-radius:999px;flex:none;order:0;width:12px;height:42px;position:relative;overflow:hidden}.miniMeterTrack span{border-radius:inherit;transition:height .35s,background .35s;position:absolute;inset:auto 1px 1px}.miniMeterTracks{order:0;gap:4px;display:inline-flex}.splitMiniMeter{gap:6px}.splitMiniMeter .miniMeterTrack{width:9px}.splitMiniMeterValues{gap:2px;line-height:1.1;display:grid}.splitMiniMeterValues span{grid-template-columns:13px minmax(0,1fr);align-items:baseline;gap:3px;min-width:0;display:grid}.splitMiniMeterValues i{color:var(--muted);letter-spacing:.04em;font-size:9px;font-style:normal;font-weight:800}.splitMiniMeterValues b{min-width:0;color:inherit;font-size:inherit;text-overflow:ellipsis;white-space:nowrap;font-weight:400;overflow:hidden}.miniMeterValue{color:var(--text);white-space:nowrap;font-variant-numeric:tabular-nums;order:1;font-size:13px;font-weight:400}.updateFlag{color:#8fa1ba;border-radius:999px;justify-content:center;align-items:center;min-height:28px;font-size:11px;font-weight:900;display:inline-flex}.updateFlag.available{color:#fde68a;background:#f59e0b14;border:1px solid #f59e0b61}.loadPill{background:#0f172ab8;border:1px solid #38bdf833;border-radius:999px;justify-content:center;align-items:center;min-width:106px;min-height:34px;display:inline-flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff09}.loadFill{border-radius:inherit;opacity:.88;min-width:2px;transition:width .35s,background .35s;position:absolute;inset:0 auto 0 0}.loadText{z-index:1;color:#dbeafe;text-align:center;white-space:nowrap;text-shadow:0 1px 8px #00000080;justify-content:center;align-items:center;gap:4px;width:100%;padding:0 10px;font-size:12px;font-weight:800;line-height:1;display:flex;position:relative}.loadText b{color:var(--text);font-size:12px}.loadText small{color:#cbd5e1d1;letter-spacing:.04em;font-size:10px;font-weight:900}.tableRow{background:#0206177a;border-radius:8px;align-items:center;gap:12px;padding:12px;display:grid}.tableRow span{color:var(--muted);font-size:13px}.tableRow.updates{grid-template-columns:1fr 90px 110px 170px}.tableRow.alerts{grid-template-columns:1fr 90px 110px 80px}.tableRow.registries{grid-template-columns:1fr 110px 160px}.tableRow.audit{grid-template-columns:1fr 190px}.tableRow.policy{grid-template-columns:1fr 110px}.rowActions{justify-content:flex-end;gap:8px;display:flex}.rowActions.left{flex-wrap:wrap;justify-content:flex-start}.filterSelects{grid-template-columns:repeat(2,minmax(180px,260px));gap:10px;margin-left:auto;display:grid}.filterSelects .scopeSelect,.filterSelects>*{width:100%;min-width:0}.scopeSelect{flex:none;width:clamp(180px,22vw,260px)}.filterSelects.alertsFilters{grid-template-columns:repeat(2,minmax(150px,210px))}.filterSelects.auditFilters{grid-template-columns:minmax(220px,280px) minmax(130px,170px)}.filterSelects.jobsFilters{grid-template-columns:repeat(3,minmax(140px,190px))}.filterSelects.containersFilters{grid-template-columns:minmax(180px,240px) repeat(2,minmax(160px,220px))}.filterSelects.projectsFilters{grid-template-columns:minmax(180px,240px) minmax(160px,220px)}.status.risk-high,.status.sev-error{color:var(--tone-danger-strong-fg);border-color:var(--tone-danger-strong-border)}.status.risk-medium,.status.sev-warning{color:var(--tone-warning-fg);border-color:var(--tone-warning-border)}.status.risk-low,.status.risk-pinned{color:var(--tone-success-fg);border-color:var(--tone-success-border)}.containerRow.clickable{cursor:pointer;transition:background .16s,box-shadow .16s}.containerRow.selected{background:#38bdf814;box-shadow:inset 2px 0 #38bdf8bf}.modalBackdrop{z-index:50;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#020617d1;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modalPanel{border:1px solid var(--border-soft);background:#0d1119;border-radius:18px;flex-direction:column;width:min(1180px,96vw);max-height:min(940px,96vh);padding:26px;animation:.24s both panelIn;display:flex;overflow:hidden;box-shadow:0 30px 100px #0000009e}.modalPanel.formModal.chartExpandModal{width:min(1120px,100vw - 48px);max-height:min(760px, calc(var(--dockdog-visual-height,100dvh) - 48px))}.modalPanel.chartExpandModal .modalBody{flex:auto;min-height:0;padding-bottom:10px;overflow:hidden}.modalPanel.chartExpandModal .chartAxisLabel{width:20px}.modalPanel.chartExpandModal .chartAxisLabel span{font-size:11px}.modalPanel.chartExpandModal .yAxis{width:58px;min-width:58px;padding:2px 6px 5px 0}.modalPanel.chartExpandModal .yAxis span,.modalPanel.chartExpandModal .xAxis span{font-size:12px}.modalPanel.chartExpandModal .xAxis{min-height:28px;margin:0 0 0 98px;padding:0 2px 6px 0;overflow:visible}.modalPanel.chartExpandModal .xAxis span{color:#a8b5c8}.modalPanel.settingsModal,.modalPanel.formModal.settingsModal{width:min(860px,96vw)}.modalPanel.settingsModal:has(.webhookSettings){width:min(920px,96vw)}.modalPanel.formModal.settingsModal:has(.webhookSettings){width:min(920px,96vw)}.modalPanel.settingsModal:has(.templateSettings){width:min(1040px,96vw)}.modalPanel.formModal.settingsModal:has(.templateSettings){width:min(1040px,96vw)}.modalPanel.settingsModal:has(.tagPolicyTable){width:min(1180px,96vw)}.modalPanel.formModal.settingsModal:has(.tagPolicyTable){width:min(1180px,96vw)}.metricsPanel{background:0 0;min-width:0}.chartGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.chartCard{border:1px solid var(--border-soft);background:#0d1119;border-radius:14px;padding:10px 12px;overflow:hidden}.chartHead{justify-content:space-between;align-items:baseline;margin-bottom:4px;display:flex}.chartHead span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:800}.chartHead b{font-variant-numeric:tabular-nums;font-size:14px}.chartFrame{gap:6px;min-width:0;display:grid}.chartFrame.large{width:100%;height:clamp(320px, calc(var(--dockdog-visual-height,100dvh) - 240px), 520px);grid-template-rows:minmax(0,1fr) auto;gap:10px}.chartFrame.large .chartBody{height:100%;min-height:0}.chartBody{align-items:stretch;gap:10px;min-width:0;display:flex}.chartAxisLabel{flex-shrink:0;justify-content:center;align-items:center;width:16px;margin-right:2px;display:flex}.chartAxisLabel span{white-space:nowrap;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800;display:inline-block;transform:rotate(-90deg)}.yAxis{flex-direction:column;flex-shrink:0;justify-content:space-between;align-items:flex-end;width:auto;min-width:46px;padding:2px 4px 4px 0;display:flex}.yAxis span{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:9.5px;font-weight:700;line-height:1}.chartPlot{cursor:pointer;flex:1;min-width:0;display:flex;position:relative}.chartSvg{background:#01030a;border-radius:10px;flex:1;width:100%;height:148px;display:block;box-shadow:inset 0 0 0 1px #94a3b814,inset 0 18px 42px #38bdf809}.chartFrame.large .chartSvg{height:100%;min-height:0}.chartHoverLine{stroke:#e2e8f059;stroke-width:1px;stroke-dasharray:2 3;vector-effect:non-scaling-stroke;pointer-events:none}.chartHoverDot{stroke:#01030a;stroke-width:1.5px;filter:drop-shadow(0 0 4px);pointer-events:none}.chartTooltip{z-index:3;border:1px solid var(--border-soft);pointer-events:none;white-space:nowrap;background:#080b12eb;border-radius:8px;gap:1px;padding:5px 8px;display:grid;position:absolute;top:6px;transform:translate(-50%);box-shadow:0 10px 26px #0006}.chartTooltip.align-left{transform:translate(0)}.chartTooltip.align-right{transform:translate(-100%)}.chartTooltip b{font-variant-numeric:tabular-nums;font-size:13px}.chartTooltip span{color:var(--muted);font-size:10px;font-weight:700}.chartExpandHint{z-index:2;border:1px solid var(--border-soft);width:22px;height:22px;color:var(--muted);opacity:0;pointer-events:none;background:#020617b8;border-radius:8px;justify-content:center;align-items:center;transition:opacity .15s;display:inline-flex;position:absolute;bottom:6px;right:6px}.chartExpandHint .lineIcon{width:12px;height:12px}.chartPlot:hover .chartExpandHint{opacity:1}.chartRange{z-index:2;border:1px solid var(--border-soft);height:22px;color:var(--muted);cursor:pointer;background:#020617b8;border-radius:999px;align-items:center;gap:3px;padding:0 8px;font-size:11px;font-weight:800;transition:color .18s,border-color .18s;display:inline-flex;position:absolute;top:6px;right:6px}.chartRange:hover{color:var(--text);border-color:#38bdf880}.chartRange .chevron{width:12px;height:12px}.chartMenu{z-index:6;border:1px solid var(--border);background:#0d1119;border-radius:10px;gap:2px;min-width:88px;padding:6px;animation:.16s both panelIn;display:grid;position:absolute;top:34px;right:6px;box-shadow:0 24px 60px #0000008c}.chartGridLine{stroke:#94a3b81f;stroke-width:1px;vector-effect:non-scaling-stroke}.chartStatusInterval rect{fill:#ef444421;pointer-events:none}.chartStatusInterval line{stroke:#f87171b8;stroke-width:1px;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 4px #ef444466);pointer-events:none}.xAxis{justify-content:space-between;margin:6px 0 0 52px;display:flex}.xAxis span{color:var(--muted);font-variant-numeric:tabular-nums;padding-top:6px;font-size:9.5px;font-weight:700;position:relative}.xAxis span:before{content:"";background:#94a3b847;width:1px;height:4px;position:absolute;top:0;left:50%}.xAxis span:first-child:before{left:0}.xAxis span:last-child:before{left:auto;right:0}.chartLine{filter:drop-shadow(0 0 6px color-mix(in srgb, currentColor 45%, transparent));animation:.52s cubic-bezier(.22,.8,.24,1) both chartLineIn}.chartArea{animation:.52s cubic-bezier(.22,.8,.24,1) both chartAreaIn}.chartStopLine{stroke:#f87171eb;stroke-width:1.6px;stroke-dasharray:3 3;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 6px #ef4444a6)}.inlineForm{flex-wrap:wrap;gap:10px;display:flex}.inlineForm input,.inlineForm select{border:1px solid var(--border-soft);height:40px;color:var(--text);background:#02061799;border-radius:8px;outline:none;flex:160px;padding:0 12px}.compactInput{border:1px solid var(--border-soft);width:min(320px,100%);height:38px;color:var(--text);background:#02061799;border-radius:8px;outline:none;padding:0 12px}.settingsGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.settingsTwoFactor,.settingsGrid .primaryButton{grid-column:1/-1}.ciSettings{gap:16px}.ciSettingsHead{align-items:flex-start;margin-bottom:0}.ciConnection,.ciSection{border:1px solid var(--border-soft);background:#080c136b;border-radius:8px;gap:13px;padding:14px;display:grid}.ciConnectionFields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}.ciConnectionControls,.ciActions,.ciConnectionResult,.ciSectionHead,.ciRepositoryRow,.ciPipelineRow{align-items:center;display:flex}.ciConnectionControls,.ciSectionHead{justify-content:space-between;gap:12px}.ciConnectionControls .toggle,.ciRepositoryRow .toggle{background:0 0;border:0;width:fit-content;margin:0;padding:0}.ciActions{justify-content:flex-end;gap:8px}.ciActions .primaryButton{width:auto;min-width:132px}.ciConnectionResult{color:var(--muted);flex-wrap:wrap;gap:6px 12px;margin:0;font-size:12px}.ciConnectionResult b{color:var(--text)}.ciConnectionResult span{border-left:1px solid var(--border-soft);padding-left:12px}.ciViewTabs{gap:6px;padding-bottom:10px}.ciViewTabs button{align-items:center;gap:7px;display:inline-flex}.ciTabCount{min-width:18px;color:var(--muted);font-variant-numeric:tabular-nums;text-align:center;font-size:10px}.ciViewTabs button.active .ciTabCount{color:var(--text)}.ciSectionHead>div{gap:3px;display:grid}.ciSectionHead h3{margin:0;font-size:15px}.ciSectionHead p{color:var(--muted);margin:0;font-size:12px}.ciSectionHead>span{color:var(--muted);font-size:12px;font-weight:700}.ciRepositoryList,.ciPipelineList{gap:5px;display:grid}.ciRepositoryRow,.ciPipelineRow{background:#04080f6b;border:1px solid #94a3b814;border-radius:6px;gap:12px;min-width:0;min-height:48px;padding:8px 10px}.ciRepositoryRow{justify-content:space-between;align-items:flex-start}.ciRepositoryRow>div,.ciPipelineIdentity{gap:3px;min-width:0;display:grid}.ciRepositoryDetails{flex:auto}.ciRepositoryTitle{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.ciImageMappingField{gap:4px;margin-top:7px;display:grid}.ciImageMappingField>span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:800}.ciImageMappingField input{border:1px solid var(--control-border);width:100%;height:36px;color:var(--text);background:#0d111a;border-radius:6px;outline:none;padding:0 10px}.ciImageMappingField input:focus{border-color:#38bdf8b8;box-shadow:0 0 0 3px #38bdf81a}.ciDetectedImages{overflow-wrap:anywhere}.ciDiscoveryMeta{gap:2px;margin-top:4px;display:grid}.ciDiscoveryMeta .warningText{color:var(--tone-warning-fg)}.ciRepositoryRow b,.ciPipelineIdentity b{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.ciRepositoryRow span,.ciPipelineIdentity span,.ciPipelineRow time{color:var(--muted);font-size:11px}.ciPipelineIdentity{flex:auto}.ciPipelineRow time{text-align:right;min-width:118px}.ciSection .emptyState.compact{min-height:76px;margin:0}.status.disabled,.status.not_configured,.status.configuration_error{color:var(--tone-neutral-fg);border-color:var(--tone-neutral-border)}.status.connected{color:var(--tone-success-fg);border-color:var(--tone-success-border)}.status.connecting,.status.reconnecting{color:var(--tone-warning-fg);border-color:var(--tone-warning-border)}.status.authentication_failed{color:var(--tone-danger-fg);border-color:var(--tone-danger-border)}.status.awaiting_image,.status.pending,.status.processing,.status.deferred{color:var(--tone-warning-fg);border-color:var(--tone-warning-border)}.status.updated,.status.available{color:var(--tone-success-fg);border-color:var(--tone-success-border)}.status.unmapped,.status.no_change{color:var(--tone-neutral-fg);border-color:var(--tone-neutral-border)}.status.update_failed,.status.failed{color:var(--tone-danger-fg);border-color:var(--tone-danger-border)}.telegramNotificationPanel{background:#02061757;border:1px solid #38bdf833;border-radius:10px;grid-column:1/-1;gap:14px;padding:14px;display:grid}.telegramNotificationHead{gap:5px;display:grid}.telegramNotificationHead b{color:var(--text);font-size:15px}.telegramNotificationHead span{color:var(--muted);font-size:13px}.telegramNotificationGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.telegramNotificationGrid .toggle{margin:0}.telegramNotificationGrid .toggle:last-child{grid-column:1/-1}.telegramChatField{min-width:0}.compactTelegramChatField{gap:0}.srOnly{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.webhookSettings{gap:16px}.webhookSummaryGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.webhookSummaryCard{background:#02061757;border:1px solid #38bdf82e;border-radius:12px;gap:7px;min-width:0;padding:14px;display:grid}.webhookSummaryCard span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:900}.webhookSummaryCard b{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.webhookSummaryCard code{color:#7dd3fc;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;overflow:hidden}.webhookDraftPanel{margin:0}.webhookEnableToggle .toggle{background:0 0;border:0;width:fit-content;padding:0}.webhookTokenField{grid-column:1/-1}.webhookActions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:14px;display:flex}.webhookActions .primaryButton{width:auto;min-width:160px}.webhookCodeCard{background:#02061780;border:1px solid #38bdf829;border-radius:12px;overflow:hidden}.webhookCodeHead{border-bottom:1px solid #94a3b81a;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.webhookCodeHead>div{gap:3px;min-width:0;display:grid}.webhookCodeHead .fieldLabel{margin:0}.webhookCodeHead b{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.webhookCodeHead .small{flex:none;align-items:center;gap:6px;display:inline-flex}.webhookCodeHead .lineIcon{width:14px;height:14px}.webhookCodeCard pre{color:#e2e8f0;white-space:pre-wrap;word-break:break-word;background:#0003;max-height:360px;margin:0;padding:14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:1.55;overflow:auto}.webhookTabs{margin-bottom:0}.webhookHistory{gap:8px;display:grid}.webhookHistoryRow{background:#02061761;border:1px solid #94a3b81a;border-radius:10px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.webhookHistoryRow.accepted{background:#22c55e0e;border-color:#22c55e2e}.webhookHistoryRow.failed,.webhookHistoryRow.rejected{background:#ef44440e;border-color:#ef44442e}.webhookHistoryRow.unknown{opacity:.78}.webhookHistoryMain{gap:4px;min-width:0;display:grid}.webhookHistoryMain b,.webhookHistoryMain span,.webhookTime{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.webhookHistoryMain b{color:var(--text);font-size:14px}.webhookHistoryMain span,.webhookTime{color:var(--muted);font-size:12px}.webhookStatus{min-width:86px;min-height:28px;padding:5px 9px;font-size:11px;font-weight:800}.status.accepted{color:var(--tone-success-fg);border-color:var(--tone-success-border)}.status.rejected{color:var(--tone-danger-fg);border-color:var(--tone-danger-border)}.status.unknown{color:var(--tone-neutral-fg);border-color:var(--tone-neutral-border)}.toggleGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0;display:grid}.toggle{border:1px solid var(--border-soft);background:#0206176b;border-radius:8px;align-items:center;gap:12px;padding:12px;display:flex}.toggle input{opacity:0;pointer-events:none;position:absolute}.toggle span{border:1px solid var(--border-soft);background:#94a3b83d;border-radius:999px;width:44px;height:24px;transition:background .2s,border-color .2s;position:relative}.toggle span:after{content:"";background:var(--muted);border-radius:999px;width:18px;height:18px;transition:transform .2s,background .2s;position:absolute;top:2px;left:2px}.toggle input:checked+span{background:#38bdf838;border-color:#38bdf880}.toggle input:checked+span:after{background:var(--primary);transform:translate(20px)}.toggle b{font-size:14px}.toggle.disabled{cursor:not-allowed;opacity:.52}.toggle.disabled span,.toggle.disabled b{cursor:not-allowed}.toggle.deployToggleField{grid-template-columns:44px minmax(0,1fr);display:grid}.toggle.deployToggleField em,.toggle.deployToggleField small{grid-column:1/-1}.riskEditor{flex-wrap:wrap;gap:8px;padding-top:8px;display:flex}.pagination{color:var(--muted);background:#0206172e;border:1px solid #94a3b81f;border-radius:10px;grid-template-columns:minmax(120px,1fr) auto minmax(120px,1fr);align-items:center;gap:12px;margin-top:14px;padding:10px;font-size:13px;display:grid}.paginationRange{font-variant-numeric:tabular-nums}.paginationControls{justify-content:center;gap:6px;display:flex}.paginationButton{min-width:34px;padding:0 10px}.paginationRows{color:var(--muted);justify-content:flex-end;align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.paginationRowsSelect{width:82px;position:relative}.paginationRowsSelect .selectTrigger{height:34px;padding:0 10px;font-weight:800}.paginationRowsSelect .selectMenu{min-width:82px}.skeletonRow{border:1px solid var(--border-soft);background:linear-gradient(90deg,#0f172a8c,#38bdf81f,#0f172a8c) 0 0/220% 100%;border-radius:8px;height:58px;animation:1.4s ease-in-out infinite shimmer}.timelineGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.timeline{gap:8px;display:grid}.timelineItem{background:#02061757;border-left:2px solid #38bdf875;border-radius:0 8px 8px 0;gap:4px;padding:8px 10px;display:grid}.timelineItem span{color:var(--muted);font-size:12px}pre.terminal{border:1px solid var(--border-soft);color:#cbd5f5;white-space:pre-wrap;word-break:break-word;background:#05070d;border-radius:8px;max-height:320px;margin:0;padding:14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;overflow:auto}.agentInstallProgress{background:#02061757;border:1px solid #38bdf82e;border-radius:10px;gap:12px;padding:12px;display:grid}.agentInstallProgress.failed{border-color:#f8717147}.agentInstallProgress.failed .reviewScanBar>span{background:linear-gradient(90deg,#f43f5e,#f59e0b)}.agentInstallProgressHead{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.agentInstallProgressHead span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.agentInstallProgressHead b{color:#bae6fd;font-variant-numeric:tabular-nums;font-size:16px}.agentInstallSteps{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.agentInstallSteps span{min-height:30px;color:var(--muted);text-align:center;text-transform:uppercase;background:#0f172a94;border:1px solid #94a3b824;border-radius:999px;justify-content:center;align-items:center;padding:4px 7px;font-size:10px;font-weight:900;display:inline-flex}.agentInstallSteps span.done{color:#bbf7d0;border-color:#22c55e57}.agentInstallSteps span.active{color:#e0f2fe;border-color:#38bdf880;box-shadow:0 0 18px #38bdf829}.agentInstallSteps span.failed{color:#fecdd3;border-color:#f871716b}.agentInstallTerminal{border-color:#38bdf829;max-height:220px;box-shadow:inset 0 1px #ffffff08}@media (width<=720px){.agentInstallSteps{grid-template-columns:repeat(2,minmax(0,1fr))}}.iconButton{border-radius:10px;place-items:center;width:42px;padding:0;display:inline-grid}.uiIcon{font-size:17px;line-height:1}.updateAction{color:#fff;background:#e88a08;border:0;box-shadow:0 10px 26px #f59e0b57}.updateAction:hover{border:0;transform:translateY(-2px);box-shadow:0 14px 32px #f59e0b7a}.updateAction:disabled{opacity:1;cursor:progress;transform:none}.updateAction.busy{animation:1.6s ease-in-out infinite updatePulse}.updateAction.busy .lineIcon{transform-origin:50%;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes updatePulse{0%,to{box-shadow:0 10px 26px #f59e0b57}50%{box-shadow:0 0 0 6px #f59e0b33,0 12px 30px #f59e0b8c}}.navGroup{gap:4px;margin-bottom:16px;display:grid}.navGroup>span{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;opacity:.72;padding:4px 12px;font-size:11px;font-weight:800}.containerCard{flex-direction:column;flex:0 auto;gap:18px;height:auto;min-height:0;display:flex}.containerCard.execCard{flex:auto;height:min(940px,96vh)}.settingsPane{gap:18px;display:grid}.embeddedServerForm{padding:0}.containerCardHeader,.containerSummary,.containerTabs{flex-shrink:0}.containerCardHeader{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.containerCardHeader h2{margin:6px 0 4px;font-size:26px}.containerCardHeader p{color:var(--muted);overflow-wrap:anywhere;word-break:normal;margin:0}.modalHeaderActions{flex:none;justify-content:flex-end;align-items:flex-start;gap:10px;display:flex}.modalStatusStack{justify-content:flex-end;padding-top:1px}.sensitiveConfirmModal{gap:14px}.sensitiveActionSummary{background:#7f1d1d1f;border:1px solid #ef44443d;border-radius:8px;gap:6px;padding:12px;display:grid}.sensitiveActionSummary span{color:#fecaca;letter-spacing:.07em;text-transform:uppercase;font-size:11px;font-weight:800}.sensitiveActionSummary b{overflow-wrap:anywhere;min-width:0}.sensitiveDivider{color:var(--muted);grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;font-size:12px;display:grid}.sensitiveDivider:before,.sensitiveDivider:after{content:"";background:var(--border-soft);height:1px}.containerCardStatus{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.containerSummary{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.summaryTile{border:1px solid var(--border-soft);background:#02061780;border-radius:12px;gap:6px;padding:12px 14px;display:grid}.summaryTile span{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;font-size:11px;font-weight:800}.summaryTile b{font-size:18px}.metricTile{border:1px solid var(--border-soft);background:#02061780;border-radius:12px;justify-content:space-between;align-items:stretch;gap:12px;min-height:66px;padding:12px 14px;display:flex}.metricTileText{align-content:center;gap:6px;min-width:0;display:grid}.metricTileText>span{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;font-size:11px;font-weight:800}.metricTileText>b{font-variant-numeric:tabular-nums;font-size:18px}.tileInOut{gap:4px;min-width:0;display:grid}.tileInOut>div{grid-template-columns:22px minmax(58px,max-content) minmax(0,1fr);align-items:baseline;column-gap:8px;min-width:0;display:grid}.tileInOut i{color:var(--muted);letter-spacing:.06em;flex:none;width:22px;font-size:9px;font-style:normal;font-weight:900}.tileInOut b{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;font-size:14px}.tileInOut em{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-style:normal;font-weight:700;overflow:hidden}.tileBar{background:#0f172ac7;border:1px solid #94a3b824;border-radius:999px;flex:none;align-self:stretch;width:8px;min-height:38px;position:relative;overflow:hidden}.tileBar>span{border-radius:inherit;transition:height .35s,background .35s;position:absolute;inset:auto 1px 1px}.tileBarPair{align-self:stretch;gap:5px;display:flex}.controlGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.controlButton{justify-content:center;align-items:center;gap:8px;width:100%;display:inline-flex}.controlButton.danger{color:#fecaca;background:#ef44441a;border-color:#ef444480}.controlButton.danger:hover:not(:disabled){border-color:#ef4444cc}.controlButton.accent{color:#fde68a;background:#f59e0b1a;border-color:#f59e0b80}.controlButton.accent:hover:not(:disabled){border-color:#f59e0bcc}.controlButton.full{margin-top:10px}.containerTabs{border-bottom:1px solid var(--border-soft);scrollbar-width:none;flex-wrap:wrap;gap:8px;padding-bottom:14px;display:flex}.containerTabs::-webkit-scrollbar{width:0;height:0}.containerTabBody{flex:auto;min-height:220px;padding-right:12px;overflow:hidden auto}.containerTabBody.execTabBody{flex-direction:column;min-height:0;margin-right:0;padding-right:0;display:flex;overflow:hidden}.compactHead{margin-bottom:12px}.containerOverviewGrid,.settingsMatrix{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.detailPanel{border:1px solid var(--border-soft);background:#0206176b;border-radius:14px;padding:16px 18px}.detailPanel h3{margin:0 0 12px;font-size:15px}.detailPanel.wideDetail{grid-column:1/-1}.detailList{gap:10px;margin:0;display:grid}.detailList>div{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.detailList dt{color:var(--muted);font-size:13px}.detailList dd{margin:0;font-weight:700}.serverOverview{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.serverOverviewPanel{min-width:0}.serverOverviewHero{background:#02061757;border:1px solid #94a3b81f;border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:10px 12px;display:grid}.serverOverviewHero b,.serverOverviewHero span{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.serverOverviewHero span{color:var(--muted);margin-top:3px;font-size:12px}.serverOverviewHero>.statusStack{white-space:normal;flex-wrap:wrap;gap:6px;display:inline-flex;overflow:visible}.serverOverviewHero>.statusStack .status{margin-top:0;display:inline-flex}.serverDetailList{margin-top:14px}.serverKpiGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.serverKpi{background:#02061757;border:1px solid #94a3b81f;border-radius:10px;align-content:center;gap:5px;min-width:0;min-height:70px;padding:10px 12px;display:grid}.serverKpi span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:900}.serverKpi b{min-width:0;color:var(--text);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:18px;overflow:hidden}.serverKpi em{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-style:normal;font-weight:800;overflow:hidden}.serverOverviewActions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.serverOverviewActions .small{align-items:center;gap:7px;display:inline-flex}.serverOverviewActions .lineIcon{width:15px;height:15px}.inspectPane{gap:12px;display:grid}.inspectGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.inspectSection{border:1px solid var(--border-soft);background:#02061757;border-radius:10px;min-width:0;padding:12px}.inspectSection.wide{grid-column:1/-1}.inspectSection h3{color:var(--text);letter-spacing:.06em;text-transform:uppercase;margin:0 0 10px;font-size:13px}.inspectList{gap:8px;margin:0;display:grid}.inspectList>div{grid-template-columns:minmax(96px,.42fr) minmax(0,1fr);align-items:baseline;gap:10px;display:grid}.inspectList dt,.inspectKeyValue span{min-width:0;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:800}.inspectList dd{min-width:0;color:var(--text);overflow-wrap:anywhere;margin:0;font-size:12px}.inspectKeyValue{gap:7px;display:grid}.inspectKeyValue>div{background:#0f172a57;border:1px solid #94a3b814;border-radius:8px;grid-template-columns:minmax(150px,.38fr) minmax(0,1fr);align-items:start;gap:10px;padding:7px 8px;display:grid}.inspectKeyValue code,.inspectChips span{color:#cbd5f5;overflow-wrap:anywhere;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.inspectChips{flex-wrap:wrap;gap:7px;display:flex}.inspectChips span{background:#0f172a7a;border:1px solid #94a3b81f;border-radius:999px;max-width:100%;padding:6px 9px}.inspectChips.mono span{border-radius:8px}.inspectRaw{border:1px solid var(--border-soft);background:#0206176b;border-radius:10px;overflow:hidden}.inspectRaw summary{cursor:pointer;color:var(--muted);letter-spacing:.05em;text-transform:uppercase;padding:10px 12px;font-size:12px;font-weight:800}.inspectRaw pre{border-top:1px solid var(--border-soft);color:#cbd5f5;max-height:360px;margin:0;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;line-height:1.55;overflow:auto}@media (width<=760px){.overviewGrid{grid-template-columns:1fr}.overviewListRow{flex-direction:column;align-items:flex-start}.overviewTimelinePanel{padding:15px 14px}.overviewTimelineHead{display:grid}.overviewTimelineStats{justify-content:flex-start}.overviewTimelineScale{font-size:10px}.overviewTimelineScale b{font-size:9px}.overviewTimelineBars{grid-template-columns:repeat(48,minmax(3px,1fr));gap:3px;min-height:34px}.overviewTimelineBeat{height:26px}.overviewTimelineBeat:hover,.overviewTimelineBeat:focus-visible,.overviewTimelineBeat.active{height:32px;transform:translateY(-3px)}.overviewTimelineBeat.muted:hover,.overviewTimelineBeat.muted:focus-visible{height:26px;transform:none}.timelineBeatTooltip{width:min(320px,100vw - 42px)}.overviewTimelineLegend{padding-top:8px}.inspectGrid,.inspectKeyValue>div,.inspectList>div{grid-template-columns:1fr}.inspectRaw pre{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}}.loadStack{gap:10px;display:grid}.loadRow{grid-template-columns:1fr 1fr;gap:10px;display:grid}.miniTimeline{gap:8px;display:grid}.miniTimeline>div{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.miniTimeline b{font-size:13px;font-weight:700}.miniTimeline span{color:var(--muted);font-size:12px}.commandGrid{gap:10px;max-width:380px;display:grid}.commandGrid button{width:100%}.logPanel{display:block}.logViewer{border:1px solid var(--border-soft);background:#05070d;border-radius:10px;max-height:440px;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:1.55;overflow:auto}.logViewerWrap{position:relative}.execPane{flex-direction:column;flex:auto;gap:12px;height:100%;min-height:0;display:flex}.execToolbar{grid-template-columns:minmax(260px,1fr) auto;align-items:end;gap:10px;display:grid}.execToolbar label{gap:6px;min-width:0;display:grid}.execToolbar label span{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;font-size:11px;font-weight:800}.execToolbar input{min-width:0;height:38px;color:var(--text);font:inherit;background:0 0;border:0;padding:0 12px}.execCommandCombo{position:relative}.execCommandInputRow{border:1px solid var(--border-soft);background:#0206179e;border-radius:10px;grid-template-columns:minmax(0,1fr) 38px;align-items:center;min-width:0;height:38px;display:grid;overflow:hidden}.execCommandCombo:focus-within .execCommandInputRow,.execCommandCombo.open .execCommandInputRow{border-color:#38bdf885;box-shadow:0 0 0 3px #38bdf814}.execCommandMenuButton{width:38px;height:38px;color:var(--muted);background:#0f172a6b;border:0;border-left:1px solid #94a3b81f;border-radius:0;place-items:center;padding:0;display:grid}.execCommandMenuButton:hover:not(:disabled){color:var(--text);background:#0f172ab8}.execCommandMenuButton .chevron{fill:none;stroke:currentColor;stroke-width:2px;width:18px;height:18px}.execCommandMenu{z-index:80;background:#030712fa;border:1px solid #38bdf83d;border-radius:10px;gap:4px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);left:0;right:0;box-shadow:0 18px 48px #0000007a}.execCommandOption{width:100%;color:var(--text);text-align:left;background:0 0;border:0;border-radius:8px;justify-content:flex-start;padding:9px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.execCommandOption:hover,.execCommandOption.active{color:#e0f2fe;background:#38bdf824}.execActions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.execStatus{height:34px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;background:#0f172a80;border:1px solid #94a3b82e;border-radius:999px;align-items:center;padding:0 11px;font-size:11px;font-weight:800;display:inline-flex}.execStatus.connected{color:#bbf7d0;background:#16653429;border-color:#22c55e6b}.execStatus.connecting{color:#bae6fd;background:#0e749029;border-color:#38bdf86b}.execStatus.error{color:#fecaca;background:#7f1d1d2e;border-color:#f8717173}.execTerminalShell{flex:auto;width:100%;min-width:0;height:clamp(560px,96vh - 340px,760px);min-height:520px;position:relative}.execTerminalShell.fullscreen{z-index:120;width:auto;height:auto;min-height:0;box-shadow:none;background:#05070d;border-radius:0;position:fixed;inset:0}body.dockdog-terminal-fullscreen .modalBackdrop{place-items:stretch stretch;padding:0}body.dockdog-terminal-fullscreen .containerCard.execCard{z-index:110;width:100vw;height:var(--dockdog-visual-height,100dvh);background:#05070d;border-radius:0;max-height:none;padding:0;position:fixed;inset:0}body.dockdog-terminal-fullscreen .containerCard.execCard>:not(.containerTabBody){display:none}body.dockdog-terminal-fullscreen .containerCard.execCard .containerTabBody.execTabBody,body.dockdog-terminal-fullscreen .containerCard.execCard .execPane{height:100%;min-height:0;padding:0}body.dockdog-terminal-fullscreen .execTerminalShell.fullscreen{z-index:130;inset:0}.execTerminal{width:100%;height:100%;min-height:inherit;background:#05070d;border:1px solid #38bdf842;border-radius:8px;padding:8px 10px;overflow:hidden;box-shadow:inset 0 0 0 1px #38bdf80d}.execTerminalShell.fullscreen .execTerminal{border:0;border-radius:0;min-height:0}.execTerminalControls{z-index:5;align-items:center;gap:8px;display:flex;position:absolute;top:10px;right:22px}.execTerminalShell.fullscreen .execTerminalControls{top:max(8px, env(safe-area-inset-top));right:max(14px, env(safe-area-inset-right))}.execTerminalOverlayButton{color:#bae6fd;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:.68;background:#02061775;border:1px solid #7dd3fc2e;border-radius:8px;place-items:center;width:34px;height:34px;padding:0;display:grid;box-shadow:0 10px 28px #0000003d}.execTerminalOverlayButton:hover{color:#e0f2fe;opacity:1;background:#082f49ad;border-color:#7dd3fc8a}.execTerminalOverlayButton .lineIcon{stroke-width:2.2px;width:17px;height:17px}.execTerminal .xterm{box-sizing:content-box;background:#05070d;padding:0;display:block;overflow:hidden;width:100%!important;height:100%!important}.execTerminal .xterm *{box-sizing:content-box}.execTerminal .xterm-viewport{scrollbar-width:none;border-radius:8px;background-color:#05070d!important}.execTerminal .xterm-viewport::-webkit-scrollbar{width:0;height:0}.execTerminal .xterm-scrollable-element>.scrollbar>.scra,.execTerminal .xterm-scrollable-element>.xterm-scrollbar>.xterm-scra{display:none!important}.execTerminal .xterm-scrollable-element>.scrollbar,.execTerminal .xterm-scrollable-element>.xterm-scrollbar{background:0 0!important;width:12px!important}.execTerminal .xterm-scrollable-element>.scrollbar.horizontal,.execTerminal .xterm-scrollable-element>.xterm-scrollbar.horizontal{display:none!important}.execTerminal .xterm-scrollable-element>.scrollbar.vertical,.execTerminal .xterm-scrollable-element>.xterm-scrollbar.vertical{background:linear-gradient(90deg,#0000 0 3px,#0f172ab8 3px 9px,#0000 9px)!important;border-radius:999px!important;right:2px!important}.execTerminal .xterm-scrollable-element>.scrollbar>.slider,.execTerminal .xterm-scrollable-element>.xterm-scrollbar>.xterm-slider{background:#38bdf88a!important;border-radius:999px!important;width:6px!important;left:3px!important;box-shadow:0 0 0 1px #082f4980,0 0 18px #38bdf829!important}.execTerminal .xterm-scrollable-element>.scrollbar.vertical:hover>.slider,.execTerminal .xterm-scrollable-element>.xterm-scrollbar.vertical:hover>.xterm-slider{background:#7dd3fcc7!important;box-shadow:0 0 0 1px #38bdf86b,0 0 20px #38bdf847!important}@media (width<=760px){.execToolbar{grid-template-columns:1fr}.execActions{justify-content:stretch}.execActions button{flex:1}.execTerminalShell{height:min(560px,96vh - 300px);min-height:360px}.execTerminalShell.fullscreen{inset:0}.execTerminalControls{top:8px;right:18px}}.logGroup{border-radius:8px;padding:2px 0}.logGroup+.logGroup{margin-top:2px}.logGroup.err{color:#fecaca;background:#ef444417;box-shadow:inset 2px 0 #ef444499}.logLine{color:#cbd5f5;white-space:pre-wrap;word-break:break-word;gap:10px;padding:1px 8px;display:flex}.logLine .logTs{color:#5b6b86;flex:none}.logLine .logMsg{white-space:pre-wrap;word-break:break-word;min-width:0}.logGroup.err .logLine{color:#fecaca}.logGroup.err .logTs{color:#f87171b3}.logDownloadBtn{z-index:2;width:36px;height:36px;color:var(--muted);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#080d18d1;border-radius:8px;position:absolute;top:10px;right:14px}.logDownloadBtn:hover{color:var(--text);border-color:#38bdf880}.logScrollBtn{color:#fff;background:var(--control-primary);border:0;border-radius:50%;place-items:center;width:40px;height:40px;padding:0;animation:.2s both reviewPop;display:inline-grid;position:absolute;bottom:14px;right:14px;box-shadow:0 10px 26px #2563eb6b}.logScrollBtn:hover{transform:translateY(-2px);box-shadow:0 14px 30px #2563eb8c}.logScrollBtn .lineIcon{width:18px;height:18px}.timelineList{gap:0;display:grid}.timelineEntry{grid-template-columns:18px 1fr;gap:12px;padding:10px 4px;display:grid;position:relative}.timelineEntry:before{content:"";background:#94a3b829;width:1px;position:absolute;top:0;bottom:0;left:8px}.timelineEntry:first-child:before{top:18px}.timelineEntry:last-child:before{height:18px;bottom:auto}.timelineDot{z-index:1;background:var(--muted);border-radius:50%;width:11px;height:11px;margin-top:5px;position:relative;box-shadow:0 0 0 3px #020617e6}.timelineDot.tone-success{background:var(--success);box-shadow:0 0 0 3px #020617e6,0 0 10px #22c55e80}.timelineDot.tone-danger{background:var(--danger);box-shadow:0 0 0 3px #020617e6,0 0 10px #ef444480}.timelineDot.tone-warn{background:#f59e0b;box-shadow:0 0 0 3px #020617e6,0 0 10px #f59e0b80}.timelineDot.tone-info{background:var(--primary);box-shadow:0 0 0 3px #020617e6,0 0 10px #38bdf873}.timelineBody{gap:3px;min-width:0;display:grid}.timelineHead{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.timelineHead b{font-size:14px}.timelineHead span{color:var(--muted);white-space:nowrap;font-size:12px}.timelineDetail{color:var(--muted);word-break:break-word;font-size:12px}.timelineEntry.highlighted{background:#38bdf81a;border-radius:10px;animation:2.4s ease-out timelineHighlight}@keyframes timelineHighlight{0%{background:#38bdf847}to{background:#38bdf81a}}.timelineLogs{white-space:pre-wrap;word-break:break-word;background:#0206178c;border:1px solid #94a3b829;border-radius:8px;max-height:220px;margin:4px 0 0;padding:8px 10px;font-size:11.5px;line-height:1.5;overflow:auto}.rollbackEntryActions{margin-top:4px}.rollbackEntryActions button{align-items:center;gap:6px;display:inline-flex}.rollbackEntryActions svg{width:14px;height:14px;transform:rotate(90deg)}.eventList{gap:8px;display:grid}.eventRow{border:1px solid var(--border-soft);background:#0206177a;border-radius:10px;gap:6px;padding:10px 12px;display:grid}.eventRow b{font-size:13px}.eventRow span{color:var(--muted);font-size:12px}.eventRow code{color:#9fb4e6;word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.telegramButton{justify-self:start;align-items:center;gap:8px;display:inline-flex}.dataTable{gap:6px;display:grid}.dataTableHead,.dataRow{box-sizing:border-box;align-items:center;gap:12px;display:grid}.dataTableHead{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;padding:4px 12px;font-size:11px;font-weight:800}.dataRow{background:#0206177a;border-radius:10px;padding:12px}.dataRow b{font-size:14px}.dataRow>div b{display:block}.dataRow span,.dataRow>div span{color:var(--muted);font-size:13px}.dataRow code{color:#9fb4e6;word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.rowActions .small{align-items:center;gap:5px;display:inline-flex}.rowActions .small .lineIcon,.updateInline .lineIcon{flex:none;width:13px;height:13px}.dataRow>.rowActions:last-child,.dataRow>.rowActions.center:last-child{justify-content:flex-end;justify-self:end}.ackDone{color:#bbf7d0;background:#1665341f;border:1px solid #22c55e47;border-radius:8px;place-items:center;width:34px;height:30px;display:inline-grid}.ackDone .lineIcon{width:15px;height:15px}.tableEmpty{padding:16px 4px}.updatesTable{grid-template-columns:28px minmax(0,1fr) 140px 96px 120px}.updateSelectCell{justify-content:center;align-items:center;display:flex}.rowSelectCheckbox{appearance:none;border:1.5px solid var(--border-soft);cursor:pointer;background:#0f172a99;border-radius:6px;width:20px;height:20px;margin:0;transition:background .15s,border-color .15s;position:relative}.rowSelectCheckbox:hover{border-color:#38bdf880}.rowSelectCheckbox:checked{background:var(--primary);border-color:var(--primary)}.rowSelectCheckbox:checked:after{content:"";border:2px solid #f8fafc;border-width:0 2px 2px 0;width:5px;height:9px;position:absolute;top:45%;left:50%;transform:translate(-50%,-50%)rotate(45deg)}.updatesHeaderTools{justify-content:flex-end;align-items:center;gap:10px;min-width:min(520px,100%);display:flex}.updatesBulkActions{flex:none;position:relative}.updatesBulkActions .iconButton{width:36px;height:36px}.updatesBulkActions .iconButton.active:not(:disabled){color:#bae6fd;background:#38bdf824;border-color:#38bdf88c}.updatesSelectionBadge{color:#e0f2fe;background:#082f49c7;border:1px solid #38bdf86b;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;margin-left:-2px;padding:0 6px;font-size:11px;font-weight:800;line-height:1;display:flex}.updatesServerFilter{width:min(260px,100%)}.alertsTable{grid-template-columns:minmax(0,1fr) 140px 96px 150px 84px}.auditTable{grid-template-columns:minmax(0,1.6fr) 110px minmax(0,1.3fr) 160px}.jobsTable{grid-template-columns:150px 120px 110px minmax(0,1fr) 160px}.projectTableHead,.containerRow.projectRow{grid-template-columns:minmax(160px,1fr) 110px 94px 64px 80px 118px 118px minmax(150px,232px)}.containerRow.projectRow{gap:8px}.projectKind{color:var(--muted);text-transform:lowercase;font-size:12px;font-weight:500}.runtimeCell{align-content:center;gap:2px;min-width:0;display:grid}.runtimeCell b{color:var(--text);font-size:13px;font-weight:500}.runtimeCell small{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:800;overflow:hidden}.statusStack{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.tableActions{justify-content:flex-end;justify-self:end;align-items:center;gap:8px;min-width:0;display:inline-flex}.detailList{gap:6px;margin-top:12px;display:grid}.detailListRow{background:#0206176b;border-radius:8px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,.8fr);gap:10px;padding:10px 12px;display:grid}.detailListRow span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.jobDetailGrid,.auditDetailGrid,.alertDetailGrid{margin-bottom:14px}.detailCodeSection{gap:8px;margin-top:12px;display:grid}.detailCodeSection>span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:800}.detailCodeSection pre{box-sizing:border-box;max-width:100%;max-height:220px;color:var(--text);white-space:pre-wrap;word-break:break-word;background:#0206178a;border:1px solid #94a3b824;border-radius:8px;margin:0;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:1.55;overflow:auto}@keyframes load{0%,to{transform:translate(0)}50%{transform:translate(140%)}}@keyframes pulse{0%,to{opacity:.55;transform:scale(.96)}50%{opacity:1;transform:scale(1.05)}}@keyframes floatLogo{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes panelIn{0%{opacity:0;transform:translateY(18px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes shimmer{0%{background-position:0%}to{background-position:-220%}}@keyframes chartLineIn{0%{opacity:.35;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes chartAreaIn{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}.registriesTable{grid-template-columns:minmax(0,1fr) 130px 200px}.repoCredentialsTable{grid-template-columns:minmax(0,1fr) 160px 200px}.policyTable{grid-template-columns:minmax(0,1fr) 120px 120px 110px 120px}.tagPolicyTable{grid-template-columns:minmax(110px,1fr) 130px 120px 150px 150px minmax(170px,.8fr);min-width:850px}.settingsModal:has(.tagPolicyTable) .dataTable{overflow-x:auto}.tagPolicyOption:before{display:none}.tagPolicyOption .toggle{background:0 0;border:0;justify-content:center;padding:8px}.serversTable{grid-template-columns:minmax(220px,1fr) 88px 100px 250px}.serversTable>*{text-align:left;justify-self:start}.serversTable>.center{text-align:center;justify-self:center}.serversTable>.mono{font-weight:500}.serversTable .serverState{justify-content:flex-start;justify-self:start;align-items:center;display:inline-flex}.serversTable .serverActions{flex-wrap:nowrap;justify-content:flex-end;justify-self:stretch;max-width:100%;padding-right:2px;overflow:visible}.serversTable .serverActions .small{white-space:nowrap;flex:none}.monitorsTable{grid-template-columns:minmax(220px,1fr) 66px 92px 108px 148px minmax(216px,240px);gap:10px}.monitorsTable>.center{text-align:center;justify-self:center}.monitorIdentity{gap:4px;min-width:0;display:grid}.monitorIdentity b,.monitorIdentity span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.monitorStatus{justify-content:center;display:inline-flex}.monitorUptime{min-width:88px;color:var(--muted);justify-content:center;align-items:center;gap:8px;display:inline-flex}.monitorUptime b{color:currentColor;font-variant-numeric:tabular-nums;text-align:right;min-width:54px;font-size:12px;font-weight:800}.monitorUptimeTrack{background:#0f172ac7;border:1px solid #94a3b824;border-radius:999px;flex:none;width:9px;height:34px;position:relative;overflow:hidden}.monitorUptimeTrack>span{border-radius:inherit;min-height:2px;box-shadow:0 0 8px color-mix(in srgb, currentColor 45%, transparent);background:currentColor;transition:height .35s,color .35s;position:absolute;inset:auto 1px 1px}.monitorUptime.tone-healthy{color:var(--tone-success-fg)}.monitorUptime.tone-warning{color:var(--tone-warning-fg)}.monitorUptime.tone-danger{color:var(--tone-danger-fg)}.monitorUptime.tone-unknown{color:var(--tone-neutral-fg)}.monitorHeaderActions{flex:0 392px;align-items:center}.monitorHeaderActions .deploySearch{flex:240px;min-width:180px}.monitorHeaderActions .iconButton{flex:0 0 36px}.monitorActions{scrollbar-width:none;flex-wrap:nowrap;gap:6px;min-width:0;display:flex;overflow-x:auto}.monitorActions::-webkit-scrollbar{width:0;height:0}.monitorActions .small{white-space:nowrap;flex:1 1 0;justify-content:center;min-width:0;padding-inline:9px}.monitorHero{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.monitorKpi{background:#0f172a8c;border:1px solid #94a3b824;border-radius:8px;gap:8px;min-width:0;padding:14px;display:grid}.monitorKpi span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.monitorKpi b{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:22px;overflow:hidden}.monitorKpi.up b{color:var(--tone-success-fg)}.monitorKpi.down b{color:var(--tone-danger-fg)}.monitorKpi.pending b{color:var(--tone-warning-fg)}.monitorFormModal{width:min(720px,96vw)}.modalPanel.formModal.monitorDetailModal{width:min(980px,96vw)}.monitorDetailModal .containerCardHeader>div:first-child{min-width:0}.monitorDetailModal .containerCardHeader h2{overflow-wrap:anywhere;line-height:1.15}.monitorForm{gap:16px}.monitorForm .field{min-width:0}.monitorForm .field>span,.monitorForm .toggle b{letter-spacing:.04em;line-height:1.25}.monitorForm .field input,.monitorForm .selectTrigger{min-height:46px}.monitorForm .selectTrigger{min-width:0}.monitorForm .selectTrigger span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.monitorForm .selectOption{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.monitorFormGrid,.monitorRouteGrid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:12px;display:grid}.monitorBasics{grid-template-columns:minmax(0,1fr) 190px}.monitorHostOnly{grid-template-columns:minmax(0,1fr)}.monitorEndpointCard{background:#02061738;border:1px solid #94a3b81f;border-radius:8px;gap:12px;padding:14px;display:grid}.monitorUrlField{width:100%}.monitorHttpOptions,.monitorKeywordRow{grid-template-columns:190px minmax(0,1fr);align-items:end;gap:12px;display:grid}.monitorKeywordRow{grid-template-columns:minmax(0,1fr) 190px}.monitorKeywordRow .toggle,.monitorAutomationGrid .toggle{border-radius:8px;align-self:end;min-height:46px;padding:10px 12px}.monitorKeywordRow .toggle b,.monitorAutomationGrid .toggle b{overflow-wrap:anywhere;min-width:0;font-size:12px}.monitorCadenceGrid{grid-template-columns:repeat(5,minmax(86px,1fr));align-items:end;gap:10px;display:grid}.monitorCadenceGrid .field input{padding-inline:12px}.monitorRouteGrid{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 140px}.monitorDnsGrid{grid-template-columns:minmax(0,1fr) 150px;align-items:end;gap:12px;display:grid}.monitorDnsExpected{grid-column:1/-1}.monitorRouteGrid>.field:first-child:last-child{max-width:300px}.monitorAutomationGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.monitorRestartGrid{grid-template-columns:minmax(0,1fr) 140px;align-items:end;gap:12px;display:grid}.monitorRestartGrid .field:nth-child(2){grid-area:2/1/auto/-1}.monitorRestartGrid .field:nth-child(3){grid-area:1/2}.monitorSubmitRow{grid-template-columns:110px minmax(0,1fr);gap:10px;display:grid}.monitorSubmitRow .small,.monitorSubmitRow .primaryButton{justify-content:center;width:100%;min-height:44px}.monitorHeartbeatTable{grid-template-columns:120px minmax(0,1fr) 110px 180px}.monitorHeartbeatTable>.center{text-align:center;justify-self:center}.monitorHeartbeatTable>.right{text-align:right;justify-self:end}.monitorTransitionTimeline{min-width:0;padding:4px 2px;display:grid}.monitorTransitionEntry{grid-template-columns:18px minmax(0,1fr);gap:12px;min-width:0;padding:0 0 22px;display:grid;position:relative}.monitorTransitionEntry:before{content:"";background:#94a3b82e;width:1px;position:absolute;top:12px;bottom:0;left:5px}.monitorTransitionEntry:last-child{padding-bottom:0}.monitorTransitionEntry:last-child:before{display:none}.monitorTransitionDot{z-index:1;background:var(--muted);border-radius:50%;width:11px;height:11px;margin-top:5px;position:relative;box-shadow:0 0 0 3px #0d1119}.monitorTransitionDot.status-up{background:var(--success)}.monitorTransitionDot.status-down{background:var(--danger)}.monitorTransitionDot.status-pending{background:#f59e0b}.monitorTransitionDot.status-maintenance{background:#a78bfa}.monitorTransitionBody{gap:5px;min-width:0;display:grid}.monitorTransitionHead{justify-content:space-between;align-items:center;gap:14px;display:flex}.monitorTransitionHead time{color:var(--muted);white-space:nowrap;font-size:12px}.monitorTransitionMessage{min-width:0;color:var(--text);overflow-wrap:anywhere;font-size:13px}.monitorTransitionLatency{color:var(--muted);font-size:12px;font-weight:700}.monitorTabBody{min-height:340px;margin-right:0;padding-right:0;overflow-x:hidden}.monitorOverviewGrid,.monitorSettingsGrid{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:14px;min-width:0;display:grid}.monitorOverviewGrid .monitorHero{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}.monitorConfigPanel{grid-area:1/2/span 2;min-width:0}.monitorLastBeatPanel{min-width:0}.monitorMessageValue{overflow-wrap:anywhere;text-align:right;min-width:0;max-width:100%}.monitorGraphGrid{min-width:0;display:grid}.monitorGraphGrid .chartCard{min-height:330px;padding:16px}.monitorGraphGrid .chartSvg{height:280px}.monitorHeartbeatData .dataRow.monitorHeartbeatTable>span:nth-child(2){overflow-wrap:anywhere;white-space:normal;min-width:0}.monitorHeartbeatData .dataRow.monitorHeartbeatTable{align-items:center}.serverIdentity{gap:5px;min-width:0;display:grid}.serverIdentity b,.serverIdentity>span:not(.serverTags){text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.serverTags{flex-wrap:wrap;gap:5px;min-width:0;display:flex}.serverTags .status{min-height:22px;padding:3px 7px;font-size:10px}.serverContainersTable{grid-template-columns:minmax(0,1fr) 110px 110px}.serverEventsTable{grid-template-columns:minmax(0,1fr) 120px 170px}.detailGrid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:8px;display:grid}.detailGrid>div{flex-direction:column;gap:4px;display:flex}.detailGrid span{color:var(--muted,#94a3b8);font-size:12px}.auditDetailGrid>div{min-width:0}.auditDetailGrid b{overflow-wrap:anywhere;min-width:0}.auditDetailModal .containerCardHeader>div{min-width:0}.auditDetailModal .containerCardHeader p{overflow-wrap:anywhere;word-break:break-word;max-width:100%}.fleetTiles{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));align-items:stretch;gap:12px;margin:0 0 16px;display:grid}.fleetTile{text-align:left;cursor:pointer;background:#0f172a9e;border:1px solid #94a3b824;border-radius:8px;grid-template-columns:1fr;align-items:start;gap:12px;height:auto;min-height:0;padding:14px;display:grid;overflow:visible}.fleetTile:hover,.fleetTile:focus-visible{box-shadow:none;border-color:#38bdf859;outline:none;transform:none}.fleetTileHead{min-width:0;color:var(--text);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;font-weight:700;display:grid}.fleetTileHead .status{min-height:24px;padding:3px 8px;font-size:10px}.fleetTileBadges{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:inline-flex}.fleetTileName{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.fleetTileEndpoint{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}.fleetTileCount{align-items:baseline;gap:8px;display:flex}.fleetTileCount b{color:var(--text);font-variant-numeric:tabular-nums;font-size:24px;line-height:1}.fleetTileCount small{color:var(--muted);font-size:12px;font-weight:700}.fleetTileMeta{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.fleetLoadStat{background:#02061738;border:1px solid #94a3b81f;border-radius:8px;grid-template-columns:12px minmax(0,1fr);align-items:center;gap:8px;min-width:0;min-height:48px;padding:7px 8px;display:grid}.fleetLoadBar{background:#0f172ac7;border:1px solid #94a3b824;border-radius:999px;width:10px;height:38px;position:relative;overflow:hidden}.fleetLoadBar span{border-radius:inherit;transition:height .35s,background .35s;position:absolute;inset:auto 1px 1px}.fleetLoadCopy{gap:2px;min-width:0;display:grid}.fleetLoadCopy small{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:700;line-height:1}.fleetLoadCopy b{color:#e2e8f0e6;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:500;line-height:1.1;overflow:hidden}.fleetLoadCopy em{color:#94a3b8d6;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:10px;font-style:normal;font-weight:650;line-height:1.1;overflow:hidden}.fleetTileActions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.speedHero{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.speedHero>div,.speedMetric{background:#02061757;border:1px solid #38bdf829;border-radius:10px;gap:5px;min-width:0;padding:14px;display:grid}.speedHero span,.speedMetric span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.speedHero b,.speedMetric b{color:var(--text);font-variant-numeric:tabular-nums;font-size:24px;line-height:1.1}.speedHero em,.speedMetric em{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-style:normal;font-weight:700;overflow:hidden}.speedMetricGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.speedMetric.loading{position:relative;overflow:hidden}.speedMetric.loading:after{content:"";background:linear-gradient(90deg,#0000,#38bdf81a,#0000);animation:1.2s linear infinite shimmer;position:absolute;inset:0}.speedProgress{background:#02061757;border:1px solid #38bdf82e;border-radius:10px;gap:12px;padding:12px;display:grid}.speedProgress.failed{border-color:#f8717147}.speedProgress.failed .reviewScanBar>span{background:linear-gradient(90deg,#f43f5e,#f59e0b)}.speedProgress.done .reviewScanBar>span{background:linear-gradient(90deg,#22c55e,#38bdf8)}.speedProgressSteps{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.speedProgressSteps span{min-height:42px;color:var(--muted);background:#0f172a94;border:1px solid #94a3b824;border-radius:8px;gap:2px;padding:7px 8px;display:grid}.speedProgressSteps span.done,.speedProgressSteps span.active{color:var(--text);background:#0ea5e91f;border-color:#38bdf85c}.speedProgressSteps span.active{animation:1.3s ease-in-out infinite softPulse;box-shadow:0 0 0 1px #38bdf829,0 0 22px #38bdf81a}.speedProgressSteps b{text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:11px;line-height:1.1;overflow:hidden}.speedProgressSteps em{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-style:normal;font-weight:700;overflow:hidden}@media (width<=720px){.speedHero,.speedMetricGrid,.speedProgressSteps{grid-template-columns:1fr}}.dangerText{color:#fecdd3!important}.subhead{text-transform:uppercase;letter-spacing:.04em;color:var(--muted,#94a3b8);margin:14px 0 6px;font-size:13px}.muted{color:var(--muted,#94a3b8)}.right{text-align:right}.pillList{flex-wrap:wrap;gap:6px;display:flex}.pillList.center{justify-content:center}.tagTemplateRows{gap:8px;display:grid}.tagTemplateRow{grid-template-columns:minmax(0,1fr) 40px;align-items:center;gap:8px;animation:.2s both reviewIn;display:grid}.tagTemplateRow>.iconButton{color:#fecdd3;border-color:#f871713d;width:40px;height:40px}.tagTemplateRow>.iconButton:hover{border-color:#f871718c}.tagAddButton{color:#bae6fd;background:#082f4933;border:1px solid #38bdf859;border-radius:8px;justify-content:center;justify-self:start;align-items:center;gap:7px;min-height:36px;padding:7px 12px;font-size:13px;display:inline-flex}.tagAddButton .lineIcon{width:15px;height:15px}.tagAddButton:hover{border-color:#38bdf899}.fieldHint{color:var(--muted);margin-top:7px;font-size:12px;display:block}.advancedToggle{width:100%;min-height:44px;color:var(--text);text-align:left;background:#0f172a70;border:1px solid #94a3b829;border-radius:8px;justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.advancedToggle span{color:var(--text);letter-spacing:.04em;text-transform:uppercase;font-size:13px;font-weight:900}.advancedToggle b{color:#bae6fd;background:#38bdf81f;border-radius:8px;place-items:center;width:24px;height:24px;display:inline-grid}.advancedToggle.open{background:#082f4929;border-color:#38bdf84d}.advancedPanel{gap:12px;animation:.24s both reviewIn;display:grid}.copyField{gap:7px}.field .copyInput,.copyInput{border:1px solid var(--border-soft);background:#02061785;border-radius:8px;grid-template-columns:minmax(0,1fr) 36px;align-items:center;gap:10px;width:100%;min-width:0;padding:5px 6px 5px 12px;transition:border-color .2s,box-shadow .2s;display:grid}.field .copyInput.secretCopyInput,.copyInput.secretCopyInput{grid-template-columns:minmax(0,1fr) 36px 36px}.copyInput input{width:100%;min-width:0;height:34px;color:var(--text);background:0 0;border:0;outline:none;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.copyInput .iconButton{border-radius:8px;place-items:center;width:36px;min-width:0;height:34px;padding:0;display:inline-grid}.copyInput .dangerIconButton{color:#fecaca;background:#7f1d1d29;border-color:#ef44446b}.copyInput .dangerIconButton:hover{background:#7f1d1d3d;border-color:#f87171b3}.copyInput.copied{border-color:#22c55e8c;animation:.38s both copyPulse;box-shadow:0 0 0 3px #22c55e1a}.copyInput.copied .iconButton{color:#bbf7d0;border-color:#22c55e73}.textArea{border:1px solid var(--border-soft);width:100%;color:var(--text);resize:vertical;background:#0d111a;border-radius:8px;outline:none;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.textArea:focus{border-color:#38bdf8b8;box-shadow:0 0 0 4px #38bdf81f}.secretInputWrap{position:relative}.secretTextArea{-webkit-text-security:disc;padding-right:108px}.secretInputActions{gap:8px;display:flex;position:absolute;bottom:10px;right:10px}.secretInputActions .iconButton{background:#020617b8;width:38px;height:38px}.hiddenFileInput{display:none}.dataTableHead.registriesTable>span.center,.dataTableHead.policyTable>span.center,.dataTableHead.serversTable>span.center{text-align:center}.dataRow .center{text-align:center;justify-self:center}.dataRow .rowActions.center{justify-content:center}.dataRow>.rowActions.center:last-child{justify-content:flex-end;justify-self:end}.dataRow.clickable{cursor:pointer;transition:background .16s,box-shadow .16s}.dataRow.clickable:hover{background:#38bdf814;box-shadow:inset 2px 0 #38bdf880}.operationalRow.tone-danger,.operationalRow.tone-danger.clickable:hover{background:#4a121c38;box-shadow:inset 2px 0 #f871719e}.operationalRow.tone-warning,.operationalRow.tone-warning.clickable:hover{background:#452d0a33;box-shadow:inset 2px 0 #f59e0b94}.operationalRow.tone-danger.clickable:hover{background:#56162247}.operationalRow.tone-warning.clickable:hover{background:#52360c42}.mono{font-variant-numeric:tabular-nums;color:var(--text);font-weight:800}.fieldLabel{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-top:6px;font-size:12px;font-weight:800;display:block}.dataTableHead.updatesTable>span:nth-child(n+4){text-align:center}.dataRow.updatesTable>span:nth-child(n+4){text-align:center;justify-self:center}.selectBox{width:100%;position:relative}.selectBox.open{z-index:100}.selectBox.disabled{opacity:.55}.selectBox.disabled .selectTrigger{cursor:not-allowed}.selectTrigger{border:1px solid var(--border-soft);width:100%;height:44px;color:var(--text);text-align:left;background:#0d111a;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:0 12px;font-weight:500;display:flex}.selectTrigger:hover{box-shadow:none;border-color:#38bdf866;transform:none}.selectBox.open .selectTrigger{border-color:#38bdf899;box-shadow:0 0 0 4px #38bdf81f}.chevron{fill:none;width:16px;height:16px;stroke:var(--muted);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}.selectBox.open .chevron{transform:rotate(180deg)}.selectBox.open.openUp .chevron{transform:none}.selectMenu{z-index:120;border:1px solid var(--border);background:#0d1119;border-radius:10px;gap:2px;max-height:260px;padding:6px;animation:.16s both panelIn;display:grid;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 24px 60px #0000008c}.selectBox.openUp .selectMenu{top:auto;bottom:calc(100% + 6px);box-shadow:0 -24px 60px #00000073}.selectOption{height:38px;color:var(--muted);text-align:left;background:0 0;border:0;border-radius:8px;font-weight:600}.selectOption:hover{box-shadow:none;color:var(--text);background:#38bdf81a;transform:none}.selectOption.active{color:var(--text);background:#38bdf829}.numberInput{border:1px solid var(--border-soft);background:#0d111a;border-radius:8px;align-items:center;gap:6px;padding:4px;display:flex;position:relative}.numberInput button{border:1px solid var(--border-soft);background:#02061780;border-radius:8px;width:38px;height:38px;padding:0;font-size:18px;font-weight:800}.numberInput input{min-width:0;height:38px;color:var(--text);text-align:center;font-variant-numeric:tabular-nums;-moz-appearance:textfield;background:0 0;border:0;outline:none;flex:1;font-weight:800}.numberInput input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.numberInput input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.numberSuffix{color:var(--muted);pointer-events:none;font-size:13px;font-weight:800;position:absolute;right:52px}.autocomplete{width:min(320px,100%);position:relative}.autocomplete .compactInput{width:100%}.toastStack{z-index:80;bottom:calc(18px + env(safe-area-inset-bottom,0px));right:calc(18px + env(safe-area-inset-right,0px));gap:10px;width:min(360px,100vw - 36px);display:grid;position:fixed}@media (width<=640px){.toastStack{bottom:calc(12px + env(safe-area-inset-bottom,0px));right:calc(12px + env(safe-area-inset-right,0px));left:calc(12px + env(safe-area-inset-left,0px));width:auto}}.toast{border:1px solid var(--border-soft);border-left:3px solid var(--primary);cursor:pointer;background:#111827;border-radius:12px;align-items:flex-start;gap:10px;padding:12px 14px;animation:.26s cubic-bezier(.22,.8,.24,1) both toastIn;display:flex;box-shadow:0 22px 54px #00000080}.toast-success{border-left-color:var(--success)}.toast-danger{border-left-color:var(--danger)}.toast-info{border-left-color:var(--primary)}.toastIcon{color:var(--primary);flex-shrink:0;margin-top:1px;display:inline-flex}.toast-success .toastIcon{color:var(--success)}.toast-danger .toastIcon{color:var(--danger)}.toastBody{flex:1;gap:3px;min-width:0;display:grid}.toastBody b{font-size:14px}.toastBody span{color:var(--muted);word-break:break-word;font-size:12px}.toastClose{width:26px;height:26px;color:var(--muted);background:0 0;border:0;flex-shrink:0;padding:0;font-size:18px;line-height:1}.toastClose:hover{box-shadow:none;color:var(--text);transform:none}@keyframes toastIn{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.confirmModal{width:min(440px,96vw);max-height:none;padding:26px;display:block}.confirmModal h2{margin:0 0 8px;font-size:22px}.confirmModal p{margin:0}.confirmActions{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.dangerButton{color:#fecaca;background:#ef44441f;border-color:#ef444480}.dangerButton:hover{border-color:#ef4444cc}.primaryAccent{color:#bae6fd;background:#38bdf81f;border-color:#38bdf880}.modalPanel.formModal{width:min(560px,96vw);height:auto}.modalPanel.formModal.deployInstallModal{width:min(1180px,96vw);height:auto}.modalPanel.formModal.serverDetailModal{width:min(1120px,96vw)}.modalBody{padding-top:18px;overflow-y:auto}.modalForm{gap:14px;display:grid}.modalActions{margin-bottom:14px}.modalPanel.updateReviewModal{width:min(560px,96vw);height:min(860px, calc(var(--dockdog-visual-height,100dvh) - 48px));max-height:min(860px, calc(var(--dockdog-visual-height,100dvh) - 48px))}.modalPanel.updateReviewModal .modalBody{flex:auto;min-height:0;overflow:hidden}.updateReview{grid-template-rows:auto minmax(0,1fr) auto;gap:16px;height:100%;min-height:0;display:grid}.reviewList{scrollbar-color:#38bdf8 #94a3b81f;scrollbar-width:thin;align-content:start;gap:8px;min-height:0;padding:0 10px 12px 0;display:grid;overflow:hidden auto;-webkit-mask-image:linear-gradient(#000 calc(100% - 22px),#0000);mask-image:linear-gradient(#000 calc(100% - 22px),#0000)}.reviewList::-webkit-scrollbar{width:9px}.reviewList::-webkit-scrollbar-track{background:#94a3b81f;border-radius:999px}.reviewList::-webkit-scrollbar-thumb{background:#38bdf8;border-radius:999px}.reviewList::-webkit-scrollbar-thumb:hover{background:#7dd3fc}.reviewScan{background:#02061757;border:1px solid #94a3b824;border-radius:10px;gap:10px;padding:12px 14px;display:grid;overflow:hidden}.reviewScan>div{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.reviewScan span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.reviewScan b{color:#fed7aa;font-size:18px}.reviewScanBar{background:#94a3b81f;border-radius:999px;height:4px;display:block;position:relative;overflow:hidden}.reviewScanBar>span{border-radius:inherit;background:linear-gradient(90deg,#f59e0b,#38bdf8);min-width:4px;transition:width .28s;position:absolute;inset:0 auto 0 0}.reviewScan.active .reviewScanBar>span{box-shadow:0 0 16px #38bdf842}.reviewEmpty{text-align:center;background:#0206173d;border:1px dashed #94a3b82e;border-radius:10px;justify-items:center;gap:8px;padding:26px 16px;display:grid}.reviewEmpty b{color:var(--text)}.reviewEmpty small{max-width:360px;color:var(--muted);font-size:12px}.reviewItem{border:1px solid var(--border-soft);cursor:pointer;background:#0206177a;border-left:3px solid #94a3b840;border-radius:10px;grid-template-columns:24px minmax(0,1fr) auto 30px;align-items:center;gap:12px;padding:12px 14px;transition:border-color .25s,background .25s,opacity .2s;animation:.32s cubic-bezier(.22,.8,.24,1) both reviewIn;display:grid}.reviewItem:hover{border-color:#38bdf866}.reviewItem.available{background:#f59e0b13;border-color:#f59e0b61 #f59e0b61 #f59e0b61 #f59e0b;box-shadow:0 0 0 1px #f59e0b0a,0 14px 34px #f59e0b14}.reviewItem.available:hover{border-color:#f59e0b9e}.reviewItem.notAvailable{opacity:.58}.reviewItem.check-checking{opacity:1;border-color:#38bdf86b;border-left-color:var(--primary);background:#38bdf811;animation:1.2s ease-in-out infinite reviewPulse}.reviewItem.check-up-to-date{border-left-color:#94a3b838}.reviewItem.deselected{opacity:.5}.reviewItem.is-running{border-left-color:var(--primary);animation:1.2s ease-in-out infinite reviewPulse}.reviewItem.is-success{border-left-color:var(--success);background:#22c55e1a}.reviewItem.is-error{border-left-color:var(--danger);background:#ef44441a}.reviewInfo{min-width:0}.reviewInfo b{font-size:14px;display:block}.reviewInfo span{color:var(--muted);word-break:break-word;font-size:12px;display:block}.reviewCheck{border:1px solid var(--border-soft);width:22px;height:22px;color:var(--primary);background:#02061799;border-radius:8px;justify-content:center;align-items:center;transition:border-color .2s,background .2s;display:inline-flex}.reviewCheck.on{background:#38bdf829;border-color:#38bdf899}.reviewCheck .lineIcon{width:15px;height:15px}.reviewStatus{max-width:132px;min-height:28px;color:var(--muted);text-transform:uppercase;white-space:nowrap;background:#0f172a9e;border:1px solid #94a3b82e;border-radius:999px;justify-content:center;justify-self:end;align-items:center;gap:5px;padding:5px 10px;font-size:11px;font-weight:900;line-height:1;display:inline-flex}.reviewStatus .lineIcon{stroke-width:2.8px;width:13px;height:13px}.reviewStatus.up-to-date{color:#86efac;background:#22c55e14;border-color:#22c55e3d}.reviewStatus.pending,.reviewStatus.unknown{color:var(--muted)}.reviewStatus.checking{color:#bae6fd;border-color:#38bdf852}.reviewStatus.risk-high,.reviewStatus.risk-medium,.reviewStatus.risk-low{color:#fed7aa;background:#f59e0b1a;border-color:#f59e0b59}.reviewState{justify-content:center;align-items:center;display:inline-flex}.reviewSpinner{border:2px solid #94a3b84d;border-top-color:var(--primary);border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}.reviewBadge{border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;animation:.3s both reviewPop;display:inline-flex}.reviewBadge .lineIcon{stroke-width:2.6px;width:14px;height:14px}.reviewBadge.ok{color:var(--success);background:#22c55e29}.reviewBadge.err{color:var(--danger);background:#ef444429}.reviewActions{justify-content:flex-end;padding:14px 0 0;display:flex;position:relative}.reviewActions:before{content:"";pointer-events:none;background:linear-gradient(#0f172a00,#0f172a94);height:18px;position:absolute;top:-18px;left:0;right:0}.reviewActions .primaryButton{width:auto;min-width:200px}@keyframes reviewIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes reviewPulse{0%,to{box-shadow:0 0 #38bdf800}50%{box-shadow:0 0 0 3px #38bdf824}}@keyframes reviewPop{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes scanBar{0%{transform:translate(-100%)}55%,to{transform:translate(265%)}}@keyframes copyPulse{0%{transform:scale(.985)}to{transform:scale(1)}}.updateAvailableRow{background:#f59e0b11;border-left:3px solid #f59e0b;box-shadow:inset 0 0 0 1px #f59e0b14}@media (width<=980px){.setupShell{grid-template-columns:1fr}.heroPanel{min-height:auto}}@media (width<=820px){.dashboard{grid-template-columns:1fr}.content{padding:20px 16px}.tagPolicyTable{min-width:0}.dataRow.tagPolicyTable{gap:8px;padding:14px;grid-template-columns:repeat(2,minmax(0,1fr))!important}.dataRow.tagPolicyTable .tagPolicyName{grid-column:1/-1;padding:0 0 5px}.dataRow.tagPolicyTable .tagPolicyName b{font-size:15px}.dataRow.tagPolicyTable .tagPolicyOption{text-align:left;background:#0d111ab8;border:1px solid #94a3b81a;border-radius:6px;justify-content:space-between;justify-self:stretch;align-items:center;gap:10px;min-width:0;min-height:54px;padding:9px 10px;display:flex}.dataRow.tagPolicyTable .tagPolicyOption:before{content:attr(data-label);min-width:0;color:var(--muted);font-size:11px;font-weight:700;line-height:1.3;display:block}.dataRow.tagPolicyTable .tagPolicyOption .toggle{flex:none;min-width:44px;min-height:24px;padding:0}.dataRow.tagPolicyTable .telegramChatField{grid-column:1/-1}.modalBackdrop{min-height:var(--dockdog-visual-height,100dvh);align-items:start;padding:10px}.modalPanel{max-height:calc(var(--dockdog-visual-height,100dvh) - 20px);border-radius:14px;padding:16px;width:min(100%,760px)!important}.containerCard{height:auto;max-height:calc(var(--dockdog-visual-height,100dvh) - 20px);gap:12px}.containerCard.execCard{height:calc(var(--dockdog-visual-height,100dvh) - 20px);padding:12px}.containerCard.execCard .containerSummary{display:none}.containerCard.execCard .containerCardHeader{gap:10px}.containerCard.execCard .containerCardHeader h2{overflow-wrap:anywhere;max-width:100%;margin:2px 0;font-size:20px;line-height:1.1}.containerCard.execCard .containerCardHeader p{font-size:12px}.containerCard.execCard .containerCardStatus{gap:6px}.containerCard.execCard .containerTabs{flex-wrap:nowrap;gap:6px;padding-bottom:10px;overflow-x:auto}.containerCard.execCard .containerTabs button{flex:none}.containerCard.execCard .execToolbar{gap:8px}.containerCard.execCard .execTerminalShell{height:auto;min-height:clamp(120px, calc(var(--dockdog-visual-height,100dvh) - 365px), 220px)}aside{z-index:70;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#04070dfa;width:min(280px,82vw);transition:transform .26s;position:fixed;inset:0 auto 0 0;overflow-y:auto;transform:translate(-100%)}aside.open{transform:none;box-shadow:0 0 80px #0009}.iconButton.navToggle{display:inline-grid}.navBackdrop{z-index:65;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#02061799;display:block;position:fixed;inset:0}.cards{gap:10px}.overviewCards,.overviewServerLoadGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.overviewCards .metric{padding:14px 16px}.overviewCards .metric span{font-size:12px;line-height:1.3}.overviewCards .metric b{font-size:22px}.metric{flex:140px}.containerTableHead{display:none}.containerRow,.containerRow.wide,.containerRow.wide.withServer{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0;padding:16px}.containerIdentity{grid-column:1/-1}.serverCell{white-space:normal;grid-column:1/-1;gap:8px;display:flex}.serviceCell{white-space:normal;grid-column:1/-1;grid-template-columns:78px minmax(0,1fr);gap:2px 8px;display:grid}.serviceCell b{font-size:inherit;grid-column:2}.serviceCell span{grid-column:2}.serverCell:before,.serviceCell:before{content:attr(data-label);color:var(--muted);text-transform:uppercase;grid-area:1/1/span 2;min-width:78px;font-size:11px;font-weight:800}.containerState{scrollbar-width:none;flex-wrap:nowrap;grid-column:1/-1;justify-content:flex-start;overflow-x:auto}.containerState::-webkit-scrollbar{width:0;height:0}.centerCell{justify-content:flex-start}.metricCell{text-align:left;background:#02061752;border:1px solid #94a3b81c;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;justify-content:space-between;align-items:center;gap:8px;min-width:0;min-height:58px;padding:10px 11px;display:grid}.metricCell[data-label]:before{content:attr(data-label);min-width:0;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:800}.miniMeter{justify-content:flex-end;gap:8px;max-width:100%}.miniMeterTrack,.miniMeterTracks{order:1}.miniMeterValue{order:0}.miniMeterTrack{width:10px;height:34px}.splitMiniMeter{gap:6px}.splitMiniMeter .miniMeterTracks{gap:3px}.splitMiniMeter .miniMeterTrack{width:7px}.splitMiniMeterValues{max-width:58px;font-size:11px}.miniMeterValue{text-overflow:ellipsis;max-width:68px;overflow:hidden}.chartGrid,.timelineGrid,.settingsGrid,.toggleGrid,.webhookSummaryGrid,.telegramNotificationGrid{grid-template-columns:1fr}.telegramNotificationGrid .toggle:last-child{grid-column:auto}.webhookHistoryRow{grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;padding:10px 11px}.webhookHistoryMain{grid-column:1/-1}.webhookStatus{justify-self:start}.webhookTime{grid-column:1/-1;justify-self:start}.formGrid.two,.containerOverviewGrid,.settingsMatrix,.serverOverview{grid-template-columns:1fr}.serverKpiGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.overviewListRow.overviewServerRow,.overviewListRow.overviewAttentionRow{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.overviewListRow .overviewRowIdentity{min-width:0}.overviewListRow .overviewRowStatus,.overviewListRow .overviewRowStatusList{justify-self:end;min-width:0}.overviewListRow .overviewRowStatus{display:inline-flex}.overviewListRow .overviewRowStatusList{scrollbar-width:none;flex-wrap:nowrap;max-width:100%;display:inline-flex;overflow-x:auto}.overviewListRow .overviewRowStatusList::-webkit-scrollbar{width:0;height:0}.containerSummary{grid-template-columns:repeat(2,minmax(0,1fr))}.pagination{grid-template-columns:1fr;justify-items:stretch}.paginationControls{justify-content:flex-start;padding-bottom:2px;overflow-x:auto}.paginationRows{justify-content:flex-start}.dataTableHead{display:none}.dataRow{gap:6px;grid-template-columns:1fr!important}.containerRow.projectRow{align-items:stretch;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))!important}.containerRow.projectRow .serverIdentity{grid-column:1/-1;min-width:0}.containerRow.projectRow .serverCell,.containerRow.projectRow .runtimeCell{min-width:0;min-height:58px;color:var(--text);white-space:normal;background:#02061752;border:1px solid #94a3b81c;border-radius:10px;align-content:center;gap:4px;padding:10px 11px;line-height:1.2;display:grid}.containerRow.projectRow .serverCell{text-overflow:ellipsis;overflow:hidden}.containerRow.projectRow .runtimeCell b,.containerRow.projectRow .runtimeCell small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.containerRow.projectRow .serverCell:before,.containerRow.projectRow .runtimeCell:before{content:attr(data-label);min-width:0;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:800}.containerRow.projectRow .metricCell{grid-template-columns:minmax(0,1fr) auto}.containerRow.projectRow .containerState{grid-column:1/-1}.detailListRow{grid-template-columns:1fr;gap:4px}.dataRow.updatesTable{align-items:center;gap:6px 8px;grid-template-columns:24px minmax(0,1fr) auto auto!important}.dataRow.updatesTable .updateSelectCell{grid-row:1/span 2}.dataRow.updatesTable .updateIdentity{grid-area:1/2/auto/-1;min-width:0}.dataRow.updatesTable .updateServer,.dataRow.updatesTable .updateRisk,.dataRow.updatesTable .updateStatus{grid-row:2;min-width:0}.dataRow.updatesTable .updateServer{text-overflow:ellipsis;white-space:nowrap;justify-self:start;overflow:hidden}.dataRow.updatesTable .updateStatus{justify-self:center;display:inline-flex}.dataRow.alertsTable{align-items:center;gap:8px;grid-template-columns:minmax(0,1fr) auto!important}.dataRow.alertsTable .alertIdentity{grid-column:1;min-width:0}.dataRow.alertsTable .alertServer{grid-area:2/1/auto/-1;min-width:0}.dataRow.alertsTable .alertSeverity{grid-area:1/2;place-self:start end;min-width:0}.dataRow.alertsTable .alertStarted{grid-area:3/1;justify-self:start;min-width:0}.dataRow.alertsTable .alertActions{grid-area:3/2;align-self:end;min-width:0}.dataRow.alertsTable .alertServer,.dataRow.alertsTable .alertStarted{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dataRow.alertsTable .alertServer{justify-self:start}.dataRow.alertsTable .alertActions{flex-wrap:nowrap;justify-content:flex-end;justify-self:end;display:inline-flex}.dataRow.alertsTable .alertActions .small{min-height:30px;padding:6px 10px}.dataRow.auditTable{align-items:center;gap:4px 10px;padding:10px 11px;grid-template-columns:minmax(0,1fr) auto!important}.dataRow.auditTable .auditAction{grid-area:1/1;min-width:0}.dataRow.auditTable .auditAction b,.dataRow.auditTable .auditAction span,.dataRow.auditTable .auditActor,.dataRow.auditTable .auditTarget,.dataRow.auditTable .auditCreated{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.dataRow.auditTable .auditAction span{max-width:100%}.dataRow.auditTable .auditActor{grid-area:1/2;justify-self:end;max-width:92px;font-size:12px}.dataRow.auditTable .auditTarget{grid-area:2/1/auto/-1;font-size:12px}.dataRow.auditTable .auditCreated{grid-area:3/1/auto/-1;justify-self:start;font-size:12px}.dataRow.policyTable{align-items:center;gap:6px 10px;padding:12px;grid-template-columns:minmax(0,1fr) auto!important}.dataRow.policyTable .policyName{grid-area:1/1;min-width:0}.dataRow.policyTable .policyName b{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.dataRow.policyTable .policyMetric,.dataRow.policyTable .policyThreshold{text-align:left;grid-row:2;justify-self:start;font-size:12px}.dataRow.policyTable .policyMetric{color:var(--muted,#94a3b8);grid-column:1}.dataRow.policyTable .policyThreshold{grid-column:1;margin-left:82px}.dataRow.policyTable .policySeverity{grid-area:1/2;justify-self:end}.dataRow.policyTable .policyStatus{grid-area:2/2;justify-self:end}.dataRow.registriesTable{align-items:center;gap:6px 10px;padding:10px 11px;grid-template-columns:minmax(0,1fr) auto!important}.dataRow.registriesTable .secretIdentity{grid-area:1/1/3;min-width:0}.dataRow.registriesTable .secretIdentity b,.dataRow.registriesTable .secretIdentity span,.dataRow.registriesTable .secretType{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.dataRow.registriesTable .secretType{grid-area:1/2;justify-self:end;max-width:96px;min-height:24px;padding:3px 8px;font-size:11px}.dataRow.registriesTable .secretActions{scrollbar-width:none;grid-area:3/1/auto/-1;justify-self:stretch;gap:6px;padding-top:2px;display:flex;overflow-x:auto;justify-content:flex-end!important}.dataRow.registriesTable .secretActions::-webkit-scrollbar{width:0;height:0}.dataRow.registriesTable .secretActions .small{flex:none;min-height:30px;padding:6px 10px}.dataRow.serversTable{align-items:center;gap:8px 10px;padding:10px 11px;grid-template-columns:repeat(2,minmax(0,1fr))!important}.dataRow.serversTable .serverIdentity{grid-area:1/1/3;min-width:0}.dataRow.serversTable .serverIdentity b,.dataRow.serversTable .serverIdentity>span:not(.serverTags){text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.dataRow.serversTable>.mono{grid-area:2/2;justify-self:end;font-size:12px}.dataRow.serversTable>.serverProjectCount{grid-row:1}.dataRow.serversTable>.serverState{grid-area:3/2;justify-self:end;min-width:0;font-size:12px}.dataRow.serversTable>.mono:before{content:attr(data-label);color:var(--muted);letter-spacing:.05em;text-transform:uppercase;margin-bottom:2px;font-size:10px;font-weight:900;display:block}.dataRow.serversTable>.serverState:before{content:attr(data-label);color:var(--muted);letter-spacing:.05em;text-transform:uppercase;margin-right:6px;font-size:10px;font-weight:900;display:block}.dataRow.serversTable .serverActions{scrollbar-width:none;flex-wrap:wrap;grid-area:3/1/auto/-1;justify-self:stretch;gap:6px;padding-top:2px;display:flex;overflow:visible;justify-content:flex-end!important}.dataRow.serversTable .serverActions::-webkit-scrollbar{width:0;height:0}.dataRow.serversTable .serverActions .small{flex:none;min-height:30px;padding:6px 10px}.monitorHero,.monitorOverviewGrid,.monitorSettingsGrid,.monitorFormGrid,.monitorRouteGrid,.monitorRestartGrid,.monitorHttpOptions,.monitorKeywordRow,.monitorDnsGrid,.monitorCadenceGrid,.monitorAutomationGrid,.monitorSubmitRow{grid-template-columns:1fr}.monitorFormModal{width:min(100vw - 18px,720px)}.monitorDetailModal{width:min(100vw - 18px,980px)}.monitorDetailModal .containerCardHeader{grid-template-columns:minmax(0,1fr);gap:10px;display:grid}.monitorDetailModal .containerCardHeader h2{margin-top:0;font-size:22px}.monitorDetailModal .modalHeaderActions{justify-self:end}.monitorTabBody{min-height:260px;margin-right:-8px;padding-right:6px}.monitorOverviewGrid .monitorHero{grid-template-columns:repeat(2,minmax(0,1fr))}.monitorConfigPanel{grid-area:auto}.monitorDnsExpected{grid-column:auto}.monitorGraphGrid .chartCard{min-height:260px;padding:12px}.monitorGraphGrid .chartSvg{height:clamp(210px,42vh,300px)}.modalPanel.chartExpandModal{max-height:calc(var(--dockdog-visual-height,100dvh) - 20px);width:min(100%,760px)!important}.modalPanel.chartExpandModal .yAxis{width:50px;min-width:50px}.modalPanel.chartExpandModal .xAxis{min-height:22px;margin-left:86px}.chartFrame.large{height:clamp(260px, calc(var(--dockdog-visual-height,100dvh) - 170px), 420px);gap:8px}.chartFrame.large .chartAxisLabel{width:16px}.monitorEndpointCard{padding:12px}.monitorRouteGrid>.field:first-child:last-child{max-width:none}.monitorRestartGrid .field:nth-child(2),.monitorRestartGrid .field:nth-child(3){grid-area:auto}.monitorSubmitRow .small,.monitorSubmitRow .primaryButton{min-height:42px}.dataRow.monitorsTable .monitorIdentity,.dataRow.monitorsTable>span,.dataRow.monitorsTable .monitorActions,.dataRow.monitorHeartbeatTable>span{text-align:left;justify-self:stretch;min-width:0}.dataRow.monitorsTable>span:before,.dataRow.monitorHeartbeatTable>span:before{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;content:attr(data-label);margin-bottom:3px;font-size:10px;font-weight:900;display:block}.monitorActions{justify-content:flex-start;padding-bottom:2px}.dataRow.monitorsTable{border-radius:10px;align-items:center;gap:10px 12px;padding:13px;grid-template-columns:minmax(0,1fr) auto!important}.dataRow.monitorsTable .monitorIdentity{grid-area:1/1;align-self:start;gap:5px}.dataRow.monitorsTable .monitorIdentity b{white-space:normal;font-size:14px;line-height:1.25}.dataRow.monitorsTable .monitorIdentity span{font-size:12px}.dataRow.monitorsTable>span:first-of-type{grid-area:1/2;place-self:start end}.dataRow.monitorsTable>.monitorStatus{grid-area:2/1;justify-self:start}.dataRow.monitorsTable>.mono{text-align:right;grid-area:2/2;justify-self:end;font-size:13px}.dataRow.monitorsTable>.monitorUptime{justify-content:flex-end;min-width:0}.dataRow.monitorsTable>.muted{grid-area:3/1/auto/-1;justify-self:start;font-size:12px}.dataRow.monitorsTable>span:before{display:none}.dataRow.monitorsTable>.mono:before,.dataRow.monitorsTable>.muted:before{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;content:attr(data-label);margin:0 6px 0 0;font-size:10px;font-weight:900;display:inline}.dataRow.monitorsTable .monitorActions{grid-area:4/1/auto/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;width:100%;padding-top:2px;display:grid;overflow:visible;justify-self:stretch!important}.dataRow.monitorsTable .monitorActions:before{display:none}.dataRow.monitorsTable .monitorActions .small{justify-content:center;min-width:0;min-height:34px;padding:7px 8px}.dataRow.jobsTable{align-items:center;gap:4px 10px;padding:10px 11px;grid-template-columns:minmax(0,1fr) auto!important}.dataRow.jobsTable .jobType{text-overflow:ellipsis;white-space:nowrap;grid-area:1/1;min-width:0;overflow:hidden}.dataRow.jobsTable .jobStatus{grid-area:1/2;justify-self:end;display:inline-flex}.dataRow.jobsTable .jobSource,.dataRow.jobsTable .jobLastLog,.dataRow.jobsTable .jobCreated{text-overflow:ellipsis;white-space:nowrap;grid-row:2;min-width:0;font-size:12px;overflow:hidden}.dataRow.jobsTable .jobSource{grid-area:3/1;justify-self:start;max-width:140px}.dataRow.jobsTable .jobLastLog{color:var(--text);grid-area:2/1/auto/-1}.dataRow.jobsTable .jobCreated{grid-area:3/2;justify-self:end;max-width:150px}}@media (width<=820px) and (height<=620px){.containerCard.execCard{gap:8px}.containerCard.execCard .containerCardHeader{min-height:0}.containerCard.execCard .containerCardHeader .kicker,.containerCard.execCard .containerCardHeader p,.containerCard.execCard .containerCardStatus .badge{display:none}.containerCard.execCard .containerCardHeader h2{margin:0;font-size:18px}.containerCard.execCard .containerTabs{padding-bottom:6px}.containerCard.execCard .execToolbar{grid-template-columns:minmax(0,1fr) auto;align-items:end}.containerCard.execCard .execCommandCombo span{display:none}.containerCard.execCard .execActions{justify-content:flex-end}.containerCard.execCard .execActions .execStatus{display:none}}@media (width<=380px){.containerRow.projectRow{grid-template-columns:minmax(0,1fr)!important}}@media (width<=560px){.dataRow.tagPolicyTable{grid-template-columns:minmax(0,1fr)!important}.setupShell{align-items:start;gap:12px;padding:14px}.setupShell .heroPanel{min-height:0;padding:20px 22px}.setupShell .brandGlow{display:none}.setupShell .heroLogo{width:150px;margin:0 auto 14px;animation:none}.setupShell .heroPanel h1{margin:7px 0 10px;font-size:30px;line-height:1.05}.setupShell .heroPanel p{margin:0;font-size:13px;line-height:1.55}.setupShell .signalGrid{display:none}.setupShell .wizardPanel{padding:20px 22px}.monitorTransitionHead{flex-direction:column;align-items:flex-start;gap:5px}.panelHead{flex-wrap:wrap;align-items:flex-start}.filterSelects{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.filterSelects.jobsFilters,.filterSelects.alertsFilters,.filterSelects.auditFilters,.filterSelects.containersFilters,.filterSelects.projectsFilters{grid-template-columns:minmax(0,1fr)}.filterSelects>*{width:100%;min-width:0}.monitorHeaderActions{flex:100%;width:100%}.monitorHeaderActions .deploySearch{min-width:0}.updatesHeaderTools{flex-wrap:wrap;justify-content:flex-start;width:100%;min-width:0}.updatesServerFilter,.scopeSelect{width:100%}.heroPanel,.wizardPanel{border-radius:10px;padding:22px}.signalGrid,.buttonRow,.setupTabs,.setupTelegramSteps,.setupReviewGrid{grid-template-columns:1fr}.setupWizardTop,.telegramBoxHead,.setupTwoFactor,.setupWizardActions{display:grid}.setupWizardActions .small,.setupWizardActions .primaryButton{width:100%}.dataRow.serversTable .serverActions .small{flex:calc(50% - 6px);justify-content:center;min-width:0}.deployFieldGroups,.deployInstallGrid,.deployTemplatesGrid{grid-template-columns:1fr}.deployFilterBar{display:grid}.deployFilterBar .segmented{overflow-x:auto}.deploySearchTools{width:100%;min-width:0}.deploySearch{width:100%}.modalPanel.formModal.deployInstallModal{border-radius:0;width:100vw;max-height:100vh;padding:18px 14px}.deployWizardSteps{grid-template-columns:1fr}.deployWizardSteps button{min-height:42px}.deployConnectionPanel,.deployComposeHead,.deployWizardActions{display:grid}.deployEnvHead{display:none}.deployEnvRow{grid-template-columns:1fr}.deployEnvKey{align-items:stretch;display:grid}.deployEnvRow .iconButton,.deployWizardActions .small,.deployWizardActions .primaryButton{width:100%}.deployComposeEditor,.deployComposeEditor .cm-editor,.deployComposeEditor .cm-scroller{min-height:320px}.deployTemplateActions .small,.deployInstallModal .primaryButton{justify-content:center;width:100%}.deployReviewStrip,.templateImportPanel,.templateUrlImport,.templatePackageRow{display:grid}.templatePackageRow{grid-template-columns:34px minmax(0,1fr)}.templatePackageTags,.templatePackageRow .rowActions{grid-column:1/-1;justify-content:flex-start}}@media (width<=420px){.filterSelects,.serverKpiGrid{grid-template-columns:1fr}}@media (width>=561px) and (width<=1060px){.deployTemplatesGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.modalPanel.formModal.deployInstallModal{width:min(900px,96vw)}.deployInstallGrid,.deployWizardSteps{grid-template-columns:repeat(2,minmax(0,1fr))}}:root{--bg:#080a0f;--surface:#10141de0;--surface-strong:#121721fa;--border:#38bdf824;--border-soft:#94a3b821;--muted:#91a0b5;--shadow:0 14px 38px #0000003d}.dashboard{background:#080a0f;grid-template-columns:224px minmax(0,1fr)}.dashboard>aside{background:#0b0e15;height:100vh;padding:18px 14px;position:sticky;top:0;overflow-y:auto}.dashboard>aside .sidebarLogo{isolation:isolate;width:116px;margin:2px 10px 22px;position:relative}.dashboard>aside .sidebarLogo img{filter:none;width:100%;margin:0;display:block}.sidebarLogo:after{content:"";z-index:1;clip-path:inset(0 8% 31%);opacity:0;pointer-events:none;background:url(/logo.png) 0 0/100% no-repeat;position:absolute;inset:0}.sidebarLogo.updating:after{animation:2.2s ease-in-out infinite sidebarLogoWorking}@keyframes sidebarLogoWorking{0%,to{filter:drop-shadow(0 0 #38bdf800);opacity:.18}50%{filter:drop-shadow(0 0 7px #38bdf87a);opacity:.82}}.sidebarLogo.attention:after{animation:4.8s ease-in-out infinite sidebarLogoAttention}@keyframes sidebarLogoAttention{0%,82%,to{filter:drop-shadow(0 0 #ef444400);opacity:0}90%{filter:drop-shadow(0 0 6px #ef44446b);opacity:.7}}@media (prefers-reduced-motion:reduce){.sidebarLogo:after{display:none}}.dashboard nav{gap:4px}.dashboard .navGroup{gap:2px;margin-bottom:12px}.dashboard .navGroup>span{letter-spacing:.08em;opacity:.62;padding:5px 10px;font-size:10px;font-weight:700}.dashboard nav a{border-radius:6px;gap:9px;min-height:36px;padding:7px 10px}.dashboard nav a:hover{background:#94a3b812}.dashboard nav a.active{background:#38bdf817;box-shadow:inset 2px 0 #38bdf8b8}.dashboard .navLabel{font-size:13px;font-weight:620}.dashboard .navBadge{min-width:21px;height:20px;box-shadow:none;border-radius:5px;padding:0 5px;font-size:10px}.content{padding:22px 24px 32px}.content>header{min-height:40px}.content>header h1{margin:0;font-size:24px;font-weight:720;line-height:1.2}.content>header+.panel{margin-top:18px}.actions{gap:10px}button{border-color:var(--control-border);background:var(--control-bg);border-radius:6px;height:40px;font-weight:700;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s}button:hover{border-color:var(--control-border-hover);background-color:var(--control-bg-hover);transform:none}button:active:not(:disabled){background-color:var(--control-bg-active)}button:disabled{opacity:.48}button:focus-visible{outline-offset:2px;outline:2px solid #38bdf8b8}button.small{height:32px;padding:0 10px;font-size:12px}button.small.active,.containerTabs button.active{background:var(--control-bg-active);color:var(--text);border-color:#38bdf885}.iconButton{background:var(--control-bg);border-radius:6px;width:38px;height:38px}.updateAction,.updateAction:hover{transform:none}.updateAction{background:#e88a08;box-shadow:0 6px 16px #f59e0b3d}.updateAction:hover{background:#f19a17;box-shadow:0 8px 20px #f59e0b52}.updateAction.busy{animation-name:updatePulseCompact}@keyframes updatePulseCompact{0%,to{box-shadow:0 6px 16px #f59e0b3d}50%{box-shadow:0 0 0 3px #f59e0b24,0 8px 20px #f59e0b57}}.primaryButton{background:var(--control-primary);border-color:#0000;box-shadow:0 8px 22px #2563eb33}.primaryButton:hover{background:var(--control-primary-hover);border-color:#0000;box-shadow:0 10px 26px #2563eb47}.primaryButton.sshInstallButton{background:#0f8a68}.primaryButton.sshInstallButton:hover{background:#119b76}.field{gap:6px}.field>span,.fieldLabel{letter-spacing:.06em;font-size:11px;font-weight:700}.field input,.selectTrigger{height:42px;box-shadow:none;background:#0d111a;border-radius:6px}.field input:focus,.selectBox.open .selectTrigger{transform:none;box-shadow:0 0 0 3px #38bdf81a}.settingsModal>.modalBody>.containerTabs button.active{background:var(--control-bg-active);border-color:#38bdf87a}.field .telegramChatInput{height:42px;box-shadow:none;background:#0d111a;border-radius:6px;grid-template-columns:minmax(0,1fr) 34px;gap:4px;padding:0 4px 0 14px}.field .telegramChatInput:focus-within{border-color:#38bdf8b8;box-shadow:0 0 0 3px #38bdf81a}.field .telegramChatInput input{height:40px;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.field .telegramChatInput input:focus{box-shadow:none}.telegramChatInput .iconButton{border-radius:6px;width:34px;height:34px}.selectMenu{border-radius:6px;box-shadow:0 14px 36px #0000006b}.selectOption{border-radius:5px;min-height:34px}.selectOption:hover{background:var(--control-bg-hover)}.selectOption.active{background:var(--control-bg-active)}.setupTabs button.active,.deployFilterBar .segmented button.active,.deployWizardSteps button.active{background:var(--control-bg-active);border-color:#38bdf885}.deployFilterBar .segmented,.numberInput{border-color:var(--control-border);background:#0d111a}.numberInput button{border-color:var(--control-border);background:var(--control-bg);border-radius:5px}.toggle,.copyInput,.field .copyInput{border-color:var(--control-border);background:#0d111a;border-radius:6px}.field input,.compactInput,.textArea,.selectTrigger{border-color:var(--control-border)}.overviewTimelineLegend button,.overviewTimelineLegend button:hover,.overviewTimelineLegend button:active:not(:disabled){background:0 0;border:0}.panel,.metric,.overviewServerCard,.overviewTimelinePanel{box-shadow:none;background:#0e121bd1;border-radius:8px}.panel{padding:15px}.panel+.panel{margin-top:12px}.panelHead{gap:12px;margin-bottom:12px}.panelHead h2{margin:0;font-size:16px;font-weight:720}.panelHead span{font-size:12px}.cards{gap:10px;margin:18px 0}.overviewCards{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.metric{min-height:64px;padding:12px 14px}.metric span{font-size:12px}.metric b{font-size:21px;font-weight:720}.metric.clickable:hover{background:#131924eb;border-color:#38bdf84d}.containerList,.containerTable{gap:4px}.containerRow{background:#080c138a;border:1px solid #94a3b814;border-radius:6px;min-height:62px;padding:9px 11px}.containerRow.clickable:hover{background:#38bdf80b;box-shadow:inset 2px 0 #38bdf87a}.containerIdentity b{font-size:13px}.containerIdentity span{margin-top:3px;font-size:11px}.containerTableHead{letter-spacing:.06em;padding:3px 10px;font-size:10px;font-weight:700}.tableRow{background:#080c1380;border-radius:6px;min-height:50px;padding:9px 11px}.tableRow span{font-size:12px}.status{border-radius:5px;min-height:24px;padding:3px 8px;font-size:10px}.filterSelects{gap:8px}.pagination{margin-top:12px}.modalBackdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#03050ac2;padding:18px}.modalPanel{background:#0d1119;border-radius:10px;padding:20px;box-shadow:0 24px 70px #00000085}.containerCardHeader h2{margin:2px 0 3px;font-size:21px;font-weight:720}.containerCardHeader p{font-size:13px;line-height:1.5}.modalBody{padding-top:14px}.settingsPane,.settingsGrid{gap:14px}.settingsGrid:has(input[name=notificationWebhookUrl]){grid-template-columns:1fr}.summaryTile{border-radius:7px;padding:10px 12px}@media (width>=821px){.settingsModal>.modalBody{grid-template-columns:164px minmax(0,1fr);align-items:start;gap:20px;display:grid}.settingsModal>.modalBody>.containerTabs{border-right:1px solid var(--border-soft);gap:4px;padding-right:14px;display:grid}.settingsModal>.modalBody>.containerTabs button{text-align:left;justify-content:flex-start;width:100%}.settingsModal>.modalBody>.containerTabBody{min-width:0}}@media (width<=820px){.dashboard{grid-template-columns:1fr}.dashboard>aside{height:100vh;padding:18px 14px;position:fixed}.content{padding:16px 14px 24px}.content>header h1{font-size:21px}.modalBackdrop{padding:8px}.modalPanel{border-radius:9px;padding:15px}.settingsModal>.modalBody>.containerTabs{gap:6px}.ciConnectionFields{grid-template-columns:1fr}.ciConnectionControls{flex-direction:column;align-items:stretch}.ciActions{justify-content:stretch}.ciActions .small,.ciActions .primaryButton{flex:auto;min-width:0}.ciPipelineRow{flex-wrap:wrap;align-items:flex-start}.ciPipelineIdentity{flex-basis:calc(100% - 88px)}.ciPipelineRow time{text-align:left;width:100%;min-width:0}.ciRepositoryRow{flex-direction:column}.ciRepositoryRow .toggle{margin-top:5px}.overviewTimelineFooter{align-items:end}.overviewTimelineLegend{flex:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 12px;display:grid}.modalBackdrop>.modalPanel{width:100%!important;min-width:0!important;max-width:100%!important;max-height:calc(var(--dockdog-visual-height,100dvh) - 16px)!important}.modalPanel,.modalBody,.modalBody>*,.containerCardHeader>div:first-child,.containerTabBody{min-width:0;max-width:100%}.modalBody{overflow-x:hidden}.containerCardHeader h2,.containerCardHeader p{overflow-wrap:anywhere}.modalPanel.updateReviewModal{height:calc(var(--dockdog-visual-height,100dvh) - 16px)}.modalPanel.updateReviewModal:has(.reviewEmpty){height:auto;min-height:min(520px, calc(var(--dockdog-visual-height,100dvh) - 16px))}.updateReview{gap:10px}.reviewScan>div{flex-wrap:wrap;align-items:flex-start;gap:5px 10px}.reviewScan>div>*{overflow-wrap:anywhere;min-width:0}.reviewList{padding-right:4px}.reviewItem{grid-template-columns:22px minmax(0,1fr) 24px;gap:7px 9px;padding:10px}.reviewInfo{grid-column:2}.reviewStatus{grid-area:2/2;justify-self:start;max-width:100%}.reviewState{grid-area:1/3/span 2}.reviewActions .primaryButton{width:100%;min-width:0}}@media (width<=560px){.overviewTimelineScale span:nth-child(2),.overviewTimelineScale span:nth-child(4){display:none}}
