.kwt-cockpit{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:14px;display:grid}@media (width<=1100px){.kwt-cockpit{grid-template-columns:minmax(0,1fr)}}.kwt-kpis{margin-bottom:14px}.kwt-note{color:var(--muted);margin:6px 0 10px;font-size:12px}.kwt-side-stack{flex-direction:column;gap:14px;display:flex}.kwt-side-list{flex-direction:column;gap:8px;font-size:12.5px;display:flex}.kwt-side-item{border-bottom:1px solid var(--line-soft);flex-direction:column;gap:2px;padding-bottom:8px;display:flex}.kwt-side-item:last-child{border-bottom:0;padding-bottom:0}.kwt-side-meta{color:var(--muted);font-size:11.5px}.kwt-row-click{cursor:pointer}.kwt-diff-btns{gap:4px;display:flex}.kwc-frame{background:var(--panel);border:1px solid var(--line);border-radius:10px;margin-bottom:14px;padding:14px 16px}.kwc-title{color:var(--ink-strong);margin:0 0 4px;font-size:13px;font-weight:700}.kwc-desc{color:var(--muted);margin:0 0 10px;font-size:12.5px}.kwc-nodata-note{color:var(--muted);padding:8px 0;font-size:12.5px}.kwc-table-toggle{margin-top:10px}.kwc-table-toggle .table-wrap{margin-top:8px}.kwc-svg{width:100%;height:auto;display:block}.kwc-legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:14px;margin-top:8px;font-size:11.5px;display:flex}.kwc-legend-item{align-items:center;gap:5px;display:inline-flex}.kwc-swatch{border-radius:2px;flex:none;width:10px;height:10px}.kwc-proof-note{color:var(--muted);margin:8px 0 0;font-size:11.5px;font-style:italic}.kwc-txt{fill:var(--ink);font-size:10px}.kwc-txt-muted{fill:var(--muted);font-size:10px}.kwc-txt-bad{fill:var(--red);font-size:10px}.kwc-mono{font-family:var(--mono)}.kwc-axis,.kwc-tick{stroke:var(--line);stroke-width:1px}.kwc-hit{fill:#0000}.kwc-clickable{cursor:pointer}.kwc-clickable:focus{outline:1px solid var(--blue);outline-offset:1px}.kwc-selected{stroke:var(--blue);stroke-width:2px}.kwc-select-band{fill:var(--blue);opacity:.16}.kwc-hatch-bg{fill:var(--panel-2)}.kwc-hatch-line{stroke:var(--muted);stroke-width:1.4px}.kwc-hatch-ok-line{stroke:var(--green);stroke-width:1.4px}.kwc-nodata{fill:url(#kwc-hatch)}.kwc-fill-green{fill:var(--green)}.kwc-fill-red{fill:var(--red)}.kwc-fill-gold{fill:var(--gold)}.kwc-fill-orange{fill:var(--orange)}.kwc-fill-cyan{fill:var(--cyan)}.kwc-fill-blue{fill:var(--blue)}.kwc-fill-muted{fill:var(--muted)}.kwc-fill-panel2{fill:var(--panel-2)}.kwc-strip{background:var(--panel);border:1px solid var(--line);border-radius:10px;flex-wrap:wrap;align-items:center;gap:14px;padding:8px 14px;font-size:12.5px;display:flex}.kwc-strip-status{font-size:14px;line-height:1}.kwc-sev-ok{color:var(--green)}.kwc-sev-warn{color:var(--gold)}.kwc-sev-crit{color:var(--red)}.kwc-sev-unknown{color:var(--muted)}.kwc-strip-label{color:var(--ink-strong);font-weight:700}.kwc-strip-mono{font-family:var(--mono);color:var(--cyan);font-size:11.5px}.kwc-strip-muted{color:var(--muted)}.kwc-strip-item{align-items:center;gap:6px;display:inline-flex}.kwc-strip-agents{gap:3px;font-size:12px;display:inline-flex}.kwc-agent-fresh{color:var(--green)}.kwc-agent-warn{color:var(--gold)}.kwc-agent-crit{color:var(--red)}.kwc-agent-hollow{color:var(--muted)}.kwc-chain-ok{color:var(--green)}.kwc-chain-bad{color:var(--red)}.kwc-chain-unknown{color:var(--muted)}.kwc-mini{vertical-align:middle;display:inline-block}.kwc-seg-conform{fill:var(--green)}.kwc-seg-drifted{fill:var(--red)}.kwc-seg-missing{fill:var(--orange)}.kwc-seg-orphan{fill:var(--gold)}.kwc-seg-none{fill:url(#kwc-hatch)}.kwc-seal-fresh{fill:var(--green)}.kwc-seal-acceptable{fill:var(--gold)}.kwc-seal-degraded{fill:var(--orange)}.kwc-seal-critical{fill:var(--red)}.kwc-seal-none{fill:url(#kwc-hatch)}.kwc-marker-allow{fill:var(--green)}.kwc-marker-warn{fill:var(--gold)}.kwc-marker-deny{fill:var(--red)}.kwc-marker-other{fill:var(--muted)}.kwc-rollback{fill:url(#kwc-hatch);stroke:var(--muted);stroke-width:.5px}.kwc-gauge-zone-fresh{fill:color-mix(in srgb, var(--green) 45%, var(--panel-2))}.kwc-gauge-zone-acceptable{fill:color-mix(in srgb, var(--gold) 45%, var(--panel-2))}.kwc-gauge-zone-degraded{fill:color-mix(in srgb, var(--orange) 45%, var(--panel-2))}.kwc-gauge-zone-critical{fill:color-mix(in srgb, var(--red) 45%, var(--panel-2))}.kwc-gauge-marker{fill:var(--ink)}.kwc-hist{fill:color-mix(in srgb, var(--cyan) 65%, var(--panel-2))}.kwc-annotation{stroke:var(--gold);stroke-width:1px;stroke-dasharray:2 2}.kwc-seg-btn{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.kwc-seg-btn:focus{outline:1px solid var(--blue);outline-offset:2px}.kwc-hm-0{fill:var(--panel-2)}.kwc-hm-1{fill:color-mix(in srgb, var(--cyan) 22%, var(--panel-2))}.kwc-hm-2{fill:color-mix(in srgb, var(--cyan) 40%, var(--panel-2))}.kwc-hm-3{fill:color-mix(in srgb, var(--cyan) 58%, var(--panel-2))}.kwc-hm-4{fill:color-mix(in srgb, var(--cyan) 78%, var(--panel-2))}.kwc-hm-5{fill:var(--cyan)}.kwc-chain-verified{fill:url(#kwc-hatch-ok);stroke:var(--green);stroke-width:.5px}.kwc-chain-unverified{fill:var(--muted);opacity:.22}.kwc-chain-broken{fill:var(--red)}.kwc-chain-tick{stroke:var(--ink);stroke-width:1px}.kwc-steps{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.kwc-step{align-items:center;gap:10px;font-size:12.5px;display:flex}.kwc-step-icon{flex:none}.kwc-step-icon-done{fill:var(--green)}.kwc-step-icon-running{fill:none;stroke:var(--cyan);stroke-width:2px;stroke-dasharray:16 10;transform-origin:50%;transform-box:fill-box;animation:1.2s linear infinite kwc-spin}.kwc-step-icon-failed{fill:var(--red)}.kwc-step-icon-pending{fill:none;stroke:var(--muted);stroke-width:1.5px}.kwc-icon-mark{fill:var(--bg);font-size:8px;font-weight:700}@keyframes kwc-spin{to{transform:rotate(360deg)}}.kwc-step-label{color:var(--ink)}.kwc-step-state-done{color:var(--green)}.kwc-step-state-running{color:var(--cyan)}.kwc-step-state-failed{color:var(--red)}.kwc-step-state-pending{color:var(--muted)}.kwc-step-meta{color:var(--muted);font-variant-numeric:tabular-nums}.kwc-step-error,.kwc-step-error .kwc-mono{color:var(--red)}.kwc-spark{vertical-align:middle;align-items:center;gap:6px;display:inline-flex}.kwc-spark-line{fill:none;stroke:var(--cyan);stroke-width:1.5px}.kwc-spark-dot{fill:var(--cyan)}.kwc-spark-value{font-family:var(--mono);color:var(--ink);font-size:11px}.kwc-kind-html{fill:color-mix(in srgb, var(--cyan) 62%, var(--panel-2))}.kwc-kind-image{fill:color-mix(in srgb, var(--blue) 62%, var(--panel-2))}.kwc-kind-script{fill:color-mix(in srgb, var(--green) 62%, var(--panel-2))}.kwc-kind-style{fill:color-mix(in srgb, var(--gold) 62%, var(--panel-2))}.kwc-kind-media{fill:color-mix(in srgb, var(--purple) 62%, var(--panel-2))}.kwc-kind-other{fill:color-mix(in srgb, var(--muted) 55%, var(--panel-2))}.kwc-treemap-group{fill:var(--panel-2);stroke:var(--line)}.kwc-treemap-cell{stroke:var(--bg);stroke-width:1px}.kwc-breadcrumb{align-items:center;gap:6px;margin-bottom:8px;font-size:12px;display:flex}.kwc-breadcrumb .kwc-crumb-sep,.ops-muted{color:var(--muted)}:root{--bg:#000;--panel:#0a0d12;--panel-2:#10141b;--line:#1f2430;--line-soft:#161a22;--ink:#f5f5f5;--ink-strong:#fff;--green:#00ffa3;--cyan:#00d5e9;--gold:#ffca34;--orange:#ff8a3d;--red:#ff5872;--purple:#c792ea;--muted:#8b93a1;--blue:#8ab4ff;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Helvetica Neue", Arial, sans-serif;--mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.45;overflow:hidden}body.theme-contrast{--panel:#000;--panel-2:#000;--line:#6b7280;--line-soft:#4b5563;--ink:#fff;--ink-strong:#fff;--muted:#d1d5db}body.density-compact{font-size:13px}body.density-compact .table td,body.density-compact .table th{padding:4px 10px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.spinner{border-top-color:var(--line);animation:none}}@media print{:root{--bg:#fff;--panel:#fff;--panel-2:#f3f4f6;--line:#9ca3af;--line-soft:#d1d5db;--ink:#111;--ink-strong:#000;--muted:#4b5563}body{overflow:visible}.topbar .actions,.tabbar,.btn,.no-print{display:none!important}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#232936;border-radius:5px}::-webkit-scrollbar-track{background:0 0}a{color:var(--cyan);text-decoration:none}a:hover{text-decoration:underline}code,.mono{font-family:var(--mono);font-size:.92em}.app{flex-direction:column;height:100%;display:flex}.topbar{background:var(--panel);border-bottom:1px solid var(--line);flex:none;align-items:center;gap:12px;height:52px;padding:0 16px;display:flex}.brand{letter-spacing:.4px;color:var(--ink-strong);align-items:center;gap:10px;font-weight:700;display:flex}.brand-mark{flex:none;width:22px;height:22px}.brand small{color:var(--muted);margin-left:2px;font-weight:400}.topbar select{width:auto;max-width:220px}.topbar .actions{align-items:center;gap:10px;margin-left:auto;display:flex}.skew-indicator{color:var(--gold);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:5px;font-size:11.5px;display:inline-flex}.lang-toggle{border:1px solid var(--line);border-radius:6px;display:flex;overflow:hidden}.lang-toggle button{color:var(--muted);cursor:pointer;background:0 0;border:0;min-width:24px;min-height:24px;padding:4px 10px;font-size:12px;font-weight:600}.lang-toggle button.active{background:var(--gold);color:#000}.tabbar{background:var(--panel);border-bottom:1px solid var(--line);flex:none;gap:2px;padding:0 10px;display:flex;overflow-x:auto}.tabbar-item{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;min-height:24px;margin-bottom:-1px;padding:9px 13px;font-size:13px;font-weight:600}.tabbar-item:hover{color:var(--ink)}.tabbar-item.active{color:var(--gold);border-bottom-color:var(--gold)}.content{flex:1;min-width:0;padding:18px 22px 40px;overflow-y:auto}.page-title{color:var(--ink-strong);margin:2px 0 4px;font-size:18px;font-weight:700}.page-sub{color:var(--muted);margin-bottom:16px;font-size:12.5px}.footer-strip{height:26px;color:var(--muted);background:var(--panel);border-top:1px solid var(--line);flex:none;align-items:center;gap:14px;padding:0 14px;font-size:11px;display:flex}.footer-strip .right{gap:12px;margin-left:auto;display:flex}.card{background:var(--panel);border:1px solid var(--line);border-radius:10px;margin-bottom:14px;padding:14px 16px}.card-title{text-transform:uppercase;letter-spacing:.6px;color:var(--muted);align-items:center;gap:10px;margin:0 0 12px;font-size:13px;font-weight:700;display:flex}.card-title .actions{text-transform:none;letter-spacing:0;gap:8px;margin-left:auto;display:flex}.grid{gap:14px;display:grid}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid.cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}@media (width<=1200px){.grid.cols-4,.grid.cols-5,.grid.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}}.kpi{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px 14px}.kpi .kpi-label{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-size:12px}.kpi .kpi-value{color:var(--ink-strong);font-variant-numeric:tabular-nums;margin-top:4px;font-size:24px;font-weight:700}.kpi .kpi-hint{color:var(--muted);margin-top:2px;font-size:11.5px}.kpi.tone-gold .kpi-value{color:var(--gold)}.kpi.tone-cyan .kpi-value{color:var(--cyan)}.kpi.tone-green .kpi-value{color:var(--green)}.kpi.tone-red .kpi-value{color:var(--red)}.kpi.tone-orange .kpi-value{color:var(--orange)}.badge{letter-spacing:.3px;white-space:nowrap;border:1px solid #0000;border-radius:5px;align-items:center;gap:5px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.badge.tone-green{color:var(--green);border-color:color-mix(in srgb, var(--green) 45%, transparent);background:color-mix(in srgb, var(--green) 10%, transparent)}.badge.tone-red{color:var(--red);border-color:color-mix(in srgb, var(--red) 45%, transparent);background:color-mix(in srgb, var(--red) 10%, transparent)}.badge.tone-amber{color:var(--gold);border-color:color-mix(in srgb, var(--gold) 45%, transparent);background:color-mix(in srgb, var(--gold) 10%, transparent)}.badge.tone-blue{color:var(--blue);border-color:color-mix(in srgb, var(--blue) 45%, transparent);background:color-mix(in srgb, var(--blue) 10%, transparent)}.badge.tone-cyan{color:var(--cyan);border-color:color-mix(in srgb, var(--cyan) 45%, transparent);background:color-mix(in srgb, var(--cyan) 10%, transparent)}.badge.tone-purple{color:var(--purple);border-color:color-mix(in srgb, var(--purple) 45%, transparent);background:color-mix(in srgb, var(--purple) 10%, transparent)}.badge.tone-gray{color:var(--muted);border-color:var(--line);background:var(--panel-2)}.table-wrap{border:1px solid var(--line);background:var(--panel);border-radius:10px;overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:13px}.table th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--line);background:var(--panel);z-index:1;padding:8px 12px;font-size:11.5px;position:sticky;top:0}.table td{border-bottom:1px solid var(--line-soft);vertical-align:top;padding:8px 12px}.table tr:last-child td{border-bottom:0}.table tbody tr:hover{background:var(--panel-2)}.table .num{text-align:right;font-variant-numeric:tabular-nums}.field{flex-direction:column;gap:5px;margin-bottom:12px;display:flex}.field>label{color:var(--muted);font-size:12px;font-weight:600}.field .hint{color:var(--muted);font-size:11.5px}input[type=text],input[type=password],input[type=number],input[type=url],input[type=email],select,textarea{background:var(--panel-2);border:1px solid var(--line);color:var(--ink);font-size:13px;font-family:var(--font);border-radius:7px;outline:none;width:100%;padding:7px 10px}input:focus,select:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 2px color-mix(in srgb, var(--gold) 25%, transparent)}input::placeholder{color:#4b5261}.checkbox-row{align-items:center;gap:8px;margin:8px 0;display:flex}.checkbox-row input{accent-color:var(--gold);width:15px;height:15px}.btn{border:1px solid var(--line);background:var(--panel-2);color:var(--ink);cursor:pointer;white-space:nowrap;border-radius:7px;justify-content:center;align-items:center;gap:7px;min-height:24px;padding:7px 14px;font-size:13px;font-weight:600;display:inline-flex}.btn:hover{border-color:var(--gold)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--gold);border-color:var(--gold);color:#000}.btn.primary:hover{filter:brightness(1.08)}.btn.danger{color:var(--red);border-color:color-mix(in srgb, var(--red) 40%, transparent)}.btn.danger:hover{border-color:var(--red)}.btn.small{padding:4px 9px;font-size:12px}.btn-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.banner{border:1px solid;border-radius:8px;align-items:center;gap:9px;margin-bottom:0;padding:9px 13px;font-size:12.5px;display:flex}.banner-zone{flex-direction:column;flex:none;gap:6px;padding:8px 16px 0;display:flex}.banner.warn{color:var(--gold);border-color:color-mix(in srgb, var(--gold) 40%, transparent);background:color-mix(in srgb, var(--gold) 7%, transparent)}.banner.info{color:var(--cyan);border-color:color-mix(in srgb, var(--cyan) 40%, transparent);background:color-mix(in srgb, var(--cyan) 7%, transparent)}.banner.danger{color:var(--red);border-color:color-mix(in srgb, var(--red) 40%, transparent);background:color-mix(in srgb, var(--red) 7%, transparent)}.empty{color:var(--muted);text-align:center;padding:34px 10px;font-size:13px}.spinner{border:2px solid var(--line);border-top-color:var(--gold);border-radius:50%;width:15px;height:15px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.hash{font-family:var(--mono);color:var(--cyan);word-break:break-all;font-size:11.5px}.kv{grid-template-columns:190px 1fr;gap:5px 14px;font-size:13px;display:grid}.kv dt{color:var(--muted)}.kv dd{word-break:break-word;margin:0}.bar.tone-green{fill:var(--green)}.bar.tone-red{fill:var(--red)}.bar.tone-amber{fill:var(--gold)}.bar.tone-blue{fill:var(--blue)}.bar.tone-cyan{fill:var(--cyan)}.bar.tone-purple{fill:var(--purple)}.bar.tone-gray{fill:var(--muted)}.modal-overlay{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#000000a8;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;width:100%;max-width:440px;padding:20px 22px;box-shadow:0 18px 60px #000000b3}.modal-title{color:var(--ink-strong);align-items:center;gap:9px;margin:0 0 10px;font-size:15px;font-weight:700;display:flex}.modal-title .modal-icon{color:var(--gold);flex:none}.modal-card.danger .modal-title .modal-icon{color:var(--red)}.modal-body{color:var(--muted);word-break:break-word;margin-bottom:18px;font-size:13px}.modal-body .mono{color:var(--cyan)}.modal-actions{justify-content:flex-end;gap:9px;display:flex}.lock-overlay{z-index:200;background:var(--bg);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lock-card{width:100%;max-width:400px}.help-badge{vertical-align:middle;outline-offset:2px;margin-left:6px;display:inline-flex;position:relative}.help-badge-icon{border:1px solid var(--muted);width:16px;height:16px;color:var(--cyan);cursor:help;-webkit-user-select:none;user-select:none;border-radius:50%;justify-content:center;align-items:center;font-size:11px;line-height:1;display:inline-flex}.help-badge-icon:before{content:"?"}.help-badge:hover .help-badge-icon,.help-badge:focus .help-badge-icon{border-color:var(--cyan)}.help-tooltip{z-index:210;background:var(--panel);border:1px solid var(--line);width:max-content;max-width:300px;color:var(--ink);text-align:left;white-space:normal;opacity:0;visibility:hidden;border-radius:6px;padding:8px 10px;font-size:12px;font-weight:400;transition:opacity .12s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 6px 20px #00000073}.help-badge:hover .help-tooltip,.help-badge:focus-within .help-tooltip{opacity:1;visibility:visible}.help-example{color:var(--muted);margin-top:6px;display:block}.btn-help-wrap{align-items:center;gap:2px;display:inline-flex}@media (prefers-reduced-motion:reduce){.help-tooltip{transition:none}}
