.radar-loading{color:var(--fab-text-2,#7a8599);flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:80px 20px;display:flex}.radar-loading .fab-spinner{border-width:3px;width:40px;height:40px}#btn-radar-cancel:hover:not(:disabled){color:#fca5a5;background:#f871711f;border-color:#f8717180;transform:translateY(-1px);box-shadow:0 4px 12px #f8717126}#btn-radar-cancel:active:not(:disabled){box-shadow:none;transform:translateY(0)}#btn-radar-cancel:disabled{opacity:.5;cursor:not-allowed}#btn-radar-retry:hover{transform:translateY(-1px);box-shadow:0 4px 16px #4a90d94d}.radar-view-tabs{background:var(--fab-bg-surface,#1a1f2e);scrollbar-width:thin;scrollbar-color:#ffffff1f transparent;border-radius:8px;flex-shrink:0;gap:2px;margin-bottom:12px;padding:3px;display:flex;overflow:auto hidden}.radar-view-tabs::-webkit-scrollbar{height:3px}.radar-view-tabs::-webkit-scrollbar-thumb{background:#ffffff24;border-radius:2px}.radar-view-tabs::-webkit-scrollbar-thumb:hover{background:#ffffff3d}.radar-view-tab{color:var(--fab-text-2,#7a8599);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:6px;padding:7px 14px;font-family:inherit;font-size:.78rem;font-weight:500;transition:all .2s}.radar-view-tab:hover{color:var(--fab-text-1,#b0bac9);background:#ffffff0a}.radar-view-tab.active{background:var(--fab-accent,#4a90d9);color:#fff}.radar-layout{flex:1;gap:0;height:calc(100vh - 180px);min-height:0;display:flex}.radar-layout.radar-layout--document-flow{height:auto;min-height:0}.radar-layout--document-flow .radar-viz-area{overflow:visible}.radar-layout--document-flow .radar-viz-container{contain:style;flex:none;min-height:0;overflow:visible}.radar-layout--document-flow .radar-sca-view,.radar-layout--document-flow .radar-sbom-view{max-height:none;overflow:visible}.radar-layout--document-flow .radar-sca-board-scroll{overflow:auto visible}.radar-tree-panel{background:var(--fab-bg-surface,#1a1f2e);border:1px solid var(--fab-border,#2a3040);scrollbar-width:thin;scrollbar-color:#ffffff14 transparent;border-radius:10px 0 0 10px;flex-shrink:0;width:220px;min-width:180px;font-size:.78rem;overflow:hidden auto}.radar-tree-panel::-webkit-scrollbar{width:4px}.radar-tree-panel::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.radar-tree-header{color:var(--fab-text-2,#7a8599);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--fab-border,#2a3040);background:var(--fab-bg-surface,#1a1f2e);z-index:1;padding:10px 12px;font-size:.68rem;font-weight:600;position:sticky;top:0}.radar-filters{border-bottom:1px solid var(--fab-border,#2a3040);padding:8px 10px;font-size:.72rem}.radar-filter-section{margin-bottom:8px}.radar-filter-label{color:var(--fab-text-2,#7a8599);text-transform:uppercase;letter-spacing:.4px;margin-bottom:4px;font-size:.65rem;font-weight:600}.radar-filter-toggles{flex-wrap:wrap;gap:3px;display:flex}.radar-filter-pill{color:var(--fab-text-2,#7a8599);cursor:pointer;white-space:nowrap;background:#ffffff0a;border:1px solid #ffffff14;border-radius:4px;padding:3px 8px;font-family:inherit;font-size:.68rem;transition:all .15s}.radar-filter-pill:hover{color:var(--fab-text-1);border-color:#ffffff26}.radar-filter-pill.active{border-color:var(--fab-accent,#4a90d9);color:#fff;background:#4a90d933}.radar-filter-pill .pill-count{opacity:.6;margin-left:2px;font-size:.6rem}.radar-filter-slider{align-items:center;gap:6px;margin:3px 0;padding-right:8px;display:flex}.radar-filter-slider label{color:var(--fab-text-2,#7a8599);flex:1;min-width:55px;font-size:.68rem}.radar-filter-slider input[type=range]{appearance:none;background:#ffffff1a;border-radius:2px;outline:none;flex:2;height:3px}.radar-filter-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--fab-accent,#4a90d9);cursor:pointer;border-radius:50%;width:12px;height:12px}.radar-range-slider{margin:5px 0;padding-right:8px}.radar-range-header{align-items:center;gap:6px;margin-bottom:2px;display:flex}.radar-range-header label{color:var(--fab-text-2,#7a8599);flex:1;min-width:55px;font-size:.68rem}.radar-range-mode{cursor:pointer;color:var(--fab-text-2);letter-spacing:.04em;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:3px;padding:1px 5px;font-family:inherit;font-size:.58rem;font-weight:600;transition:all .15s}.radar-range-mode:hover{border-color:#fff3}.radar-range-mode.active{color:#f87171;background:#ef444433;border-color:#ef4444}.radar-range-display{color:var(--fab-text-2);font-variant-numeric:tabular-nums;text-align:right;min-width:38px;font-size:.6rem}.radar-range-track{height:18px;position:relative}.radar-range-track input[type=range]{appearance:none;pointer-events:none;background:0 0;outline:none;width:100%;height:3px;position:absolute;top:6px;left:0}.radar-range-track input[type=range]::-webkit-slider-runnable-track{background:#ffffff1a;border-radius:2px;height:3px}.radar-range-track input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--fab-accent,#4a90d9);cursor:pointer;pointer-events:auto;z-index:2;border-radius:50%;width:12px;height:12px;margin-top:-4.5px;position:relative}.radar-range-track .radar-range-min::-webkit-slider-thumb{background:#06b6d4}.radar-range-track .radar-range-max::-webkit-slider-thumb{background:#f59e0b}.radar-filter-reset{color:var(--fab-accent,#4a90d9);cursor:pointer;background:0 0;border:none;margin-top:4px;padding:2px 0;font-family:inherit;font-size:.68rem}.radar-filter-reset:hover{text-decoration:underline}.radar-tree-item{padding:5px 8px 5px calc(8px + var(--depth,0) * 14px);cursor:pointer;color:var(--fab-text-1,#b0bac9);-webkit-user-select:none;user-select:none;border-left:2px solid #0000;align-items:center;gap:6px;transition:background .15s;display:flex}.radar-tree-item:hover{background:#ffffff08}.radar-tree-item.active{border-left-color:var(--fab-accent,#4a90d9);color:#fff;background:#4a90d91f}.radar-tree-item .tree-arrow{text-align:center;width:12px;color:var(--fab-text-2);font-size:9px;transition:transform .15s}.radar-tree-item .tree-arrow.open{transform:rotate(90deg)}.radar-tree-item .tree-icon{font-size:11px}.radar-tree-item .tree-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.radar-tree-item .tree-count{color:var(--fab-text-2);background:#ffffff0f;border-radius:8px;padding:1px 6px;font-size:.68rem}.radar-viz-area{background:var(--fab-bg-surface,#1a1f2e);border:1px solid var(--fab-border,#2a3040);border-left:none;border-radius:0 10px 10px 0;flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}.radar-viz-container{contain:layout style;flex:1;min-height:0;position:relative;overflow:auto}.radar-viz-container svg{max-width:100%;display:block}.radar-controls{z-index:5;gap:4px;display:flex;position:absolute;top:12px;right:12px}.radar-ctrl-btn{border:1px solid var(--fab-border,#2a3040);width:32px;height:32px;color:var(--fab-text-2,#7a8599);cursor:pointer;background:#1a1f2eeb;border-radius:6px;justify-content:center;align-items:center;font-family:inherit;font-size:14px;transition:all .15s;display:flex}.radar-ctrl-btn:hover{color:#fff;border-color:var(--fab-accent);background:#4a90d933}.radar-status-bar{color:var(--fab-text-2,#7a8599);border-top:1px solid var(--fab-border,#2a3040);background:#00000026;flex-shrink:0;align-items:center;gap:16px;padding:6px 12px;font-size:.72rem;display:flex}.radar-status-bar .status-item{align-items:center;gap:4px;display:flex}.radar-status-bar .status-dot{border-radius:50%;width:8px;height:8px}.radar-treemap-cell{color:var(--fab-text-0,#1f2430);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border:1px solid #72778524;border-radius:8px;padding:8px 10px;font-size:10px;transition:transform .18s,box-shadow .18s,border-color .18s;position:absolute;overflow:hidden;box-shadow:inset 0 1px #ffffffb8}.radar-treemap-cell:hover{z-index:2;transform:translateY(-1px);box-shadow:0 12px 24px #0f172a14,inset 0 1px #ffffffb8}.radar-treemap-label{color:var(--fab-text-0,#1f2430);pointer-events:none;font-weight:700}.radar-treemap-sub{color:var(--fab-text-2,#727785);opacity:.92;pointer-events:none;font-size:9px}.radar-matrix-label{fill:var(--fab-text-2,#7a8599);cursor:pointer;font-size:9px}.radar-matrix-label:hover{fill:var(--fab-text-0,#1f2430)}.radar-matrix-label-highlight{fill:#fcf9f8fa;stroke:#2170e42e;stroke-width:1px;pointer-events:none}.radar-matrix-cell{cursor:pointer;transition:opacity .15s}.radar-matrix-cell:hover{stroke:#2170e447;stroke-width:1px;opacity:1!important}.radar-tree-link{fill:none;stroke:#48546857;stroke-width:1.8px}.radar-tree-node circle{cursor:pointer;transition:all .15s}.radar-tree-node circle:hover{filter:brightness(1.3)}.radar-tree-node text{fill:var(--fab-text-1,#344054);font-size:10px}.radar-bundle-link{fill:none;stroke-opacity:.3;stroke-width:1.2px;mix-blend-mode:screen}.radar-bundle-link:hover{stroke-opacity:1;stroke-width:2px}.radar-bundle-node text{fill:var(--fab-text-1,#b0bac9);font-size:9px}.radar-tooltip{border:1px solid var(--fab-border,#2a3040);color:#b0bac9;pointer-events:none;z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f131cf5;border-radius:8px;max-width:280px;padding:10px 14px;font-size:11px;display:none;position:absolute;box-shadow:0 4px 20px #0006}.radar-node{cursor:pointer;transition:filter .15s}.radar-node:hover{filter:brightness(1.3)}.radar-node--critical{filter:drop-shadow(0 0 8px #f8717199);animation:2s infinite radar-pulse}.radar-node--warning{filter:drop-shadow(0 0 6px #fbbf2480)}@keyframes radar-pulse{0%,to{opacity:1}50%{opacity:.7}}.radar-health{background:var(--fab-bg-surface,#1a1f2e);border:1px solid var(--fab-border,#2a3040);border-radius:12px;align-items:center;gap:24px;margin-bottom:20px;padding:24px;display:flex}.radar-grade-ring{flex-shrink:0;width:100px;height:100px;position:relative}.radar-grade-ring svg{transform:rotate(-90deg)}.radar-grade-letter{justify-content:center;align-items:center;font-size:28px;font-weight:700;display:flex;position:absolute;inset:0}.radar-health-info{flex:1}.radar-health-title{color:var(--fab-text-1,#e0e4ea);margin-bottom:4px;font-size:1.1rem;font-weight:700}.radar-health-sub{color:var(--fab-text-2,#7a8599);font-size:.85rem}.radar-stats{grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:16px;display:grid}.radar-stat-card{background:var(--fab-bg-surface,#1a1f2e);border:1px solid var(--fab-border,#2a3040);text-align:center;border-radius:10px;padding:16px}.radar-stat-value{color:var(--fab-accent,#4a90d9);font-size:1.5rem;font-weight:700}.radar-stat-label{color:var(--fab-text-2,#7a8599);text-transform:uppercase;letter-spacing:.5px;margin-top:4px;font-size:.75rem}.radar-lang-bar{border-radius:4px;height:8px;margin:12px 0;display:flex;overflow:hidden}.radar-lang-bar-segment{height:100%;transition:width .3s}.radar-lang-legend{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.radar-lang-item{color:var(--fab-text-2,#7a8599);align-items:center;gap:6px;font-size:.8rem;display:flex}.radar-lang-dot{border-radius:3px;width:10px;height:10px}.radar-breakdown{grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:6px;margin-top:12px;display:grid}.radar-breakdown-item{text-align:center;background:#ffffff08;border-radius:8px;padding:10px}.radar-breakdown-value{font-size:1.1rem;font-weight:700}.radar-breakdown-label{color:var(--fab-text-2,#7a8599);text-transform:uppercase;margin-top:2px;font-size:.7rem}.radar-section-title{color:var(--fab-text-1,#e0e4ea);align-items:center;gap:8px;margin:20px 0 12px;font-size:.95rem;font-weight:600;display:flex}.radar-pattern{background:var(--fab-bg-surface,#1a1f2e);border:1px solid var(--fab-border,#2a3040);border-radius:8px;margin-bottom:8px;padding:12px 16px;font-size:.85rem}.radar-pattern--anti{border-left:3px solid #f87171}.radar-pattern--pattern{border-left:3px solid #4ade80}.radar-pattern-type{color:var(--fab-text-1,#e0e4ea);margin-bottom:4px;font-weight:600}.radar-pattern-desc{color:var(--fab-text-2,#7a8599)}.radar-hotspot-table{border-collapse:collapse;width:100%;font-size:.85rem}.radar-hotspot-table th{text-align:left;background:var(--fab-bg-surface,#1a1f2e);color:var(--fab-text-2,#7a8599);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--fab-border,#2a3040);padding:10px 14px;font-size:.75rem}.radar-hotspot-table td{border-bottom:1px solid var(--fab-border,#2a3040);color:var(--fab-text-1,#b0bac9);padding:10px 14px}.radar-hotspot-table tr:hover td{background:#ffffff05}.radar-severity-badge{text-transform:uppercase;border-radius:4px;padding:2px 8px;font-size:.7rem;font-weight:600;display:inline-block}.radar-severity-badge--critical{color:#f87171;background:#f8717133}.radar-severity-badge--high{color:#fb923c;background:#fb923c33}.radar-severity-badge--warning{color:#fbbf24;background:#fbbf2433}.radar-severity-badge--low{color:#4ade80;background:#4ade8033}.radar-sca-view,.radar-sbom-view{max-height:100%;color:var(--fab-text-1,#b0bac9);flex-direction:column;gap:12px;padding:12px;display:flex;overflow:auto}.radar-sca-title-row{border-bottom:1px solid var(--fab-border,#2a3040);justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:10px;display:flex}.radar-sca-eyebrow{color:var(--fab-text-2,#7a8599);letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:700}.radar-sca-title{color:var(--fab-text-1,#e0e4ea);margin-top:2px;font-size:1rem;font-weight:700}.radar-sca-generated{color:var(--fab-text-2,#7a8599);white-space:nowrap;font-size:.78rem}.radar-sca-kpis,.radar-sbom-summary{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}.radar-sbom-summary{grid-template-columns:minmax(220px,1fr) repeat(4,minmax(120px,160px))}.radar-sca-kpis div,.radar-sbom-summary div{border:1px solid var(--fab-border,#2a3040);background:#ffffff06;border-radius:8px;min-width:0;padding:10px 12px}.radar-sca-kpis strong,.radar-sbom-summary strong{color:var(--fab-text-1,#e0e4ea);font-size:1.05rem;display:block}.radar-sca-kpis span,.radar-sbom-summary span{color:var(--fab-text-2,#7a8599);text-transform:uppercase;letter-spacing:.04em;margin-top:2px;font-size:.72rem;display:block}.radar-sca-manifests{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px;display:grid}.radar-sca-manifests div{border:1px solid var(--fab-border,#2a3040);background:#ffffff05;border-radius:8px;min-width:0;padding:9px 10px}.radar-sca-manifests strong,.radar-sca-manifests span{display:block}.radar-sca-manifests span{color:var(--fab-text-2,#7a8599);overflow-wrap:anywhere;margin-top:2px;font-size:.76rem}.radar-sca-empty,.radar-sca-note{color:var(--fab-text-2,#7a8599);border:1px solid var(--fab-border,#2a3040);background:#ffffff05;border-radius:8px;padding:12px 14px;font-size:.84rem}.radar-sca-table-wrap{border:1px solid var(--fab-border,#2a3040);border-radius:8px;max-height:430px;overflow:auto}.radar-sca-table{border-collapse:collapse;width:100%;min-width:980px;font-size:.8rem}.radar-sca-table th,.radar-sca-table td{border-bottom:1px solid var(--fab-border,#2a3040);text-align:left;vertical-align:top;padding:9px 12px}.radar-sca-table th{z-index:1;color:var(--fab-text-2,#7a8599);background:var(--fab-bg-surface,#1a1f2e);letter-spacing:.05em;text-transform:uppercase;font-size:.68rem;position:sticky;top:0}.radar-sca-table tr:last-child td{border-bottom:0}.radar-sca-table small,.radar-sca-issue small{color:var(--fab-text-2,#7a8599);margin-top:3px;display:block}.radar-sca-badge{white-space:nowrap;border-radius:5px;align-items:center;min-height:20px;padding:2px 8px;font-size:.68rem;font-weight:700;display:inline-flex}.radar-sca-badge--ok{color:#4ade80;background:#4ade8024}.radar-sca-badge--warn{color:#fbbf24;background:#fbbf2424}.radar-sca-badge--high{color:#fb923c;background:#fb923c29}.radar-sca-badge--error{color:#f87171;background:#f8717129}.radar-sca-issues{gap:8px;display:grid}.radar-sca-section-title{color:var(--fab-text-1,#e0e4ea);font-size:.9rem;font-weight:700}.radar-sca-issue{border:1px solid var(--fab-border,#2a3040);background:#ffffff05;border-radius:8px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.radar-sca-board-tools{grid-template-columns:minmax(220px,1fr) minmax(150px,220px) auto;align-items:end;gap:10px;display:grid}.radar-sca-board-tools label{color:var(--fab-text-2,#7a8599);text-transform:uppercase;gap:5px;font-size:.7rem;font-weight:700;display:grid}.radar-sca-board-tools input,.radar-sca-board-tools select,.radar-sca-component-card select{width:100%;min-height:34px;color:var(--fab-text-1,#e0e4ea);background:var(--fab-bg-deep,#121722);border:1px solid var(--fab-border,#2a3040);font:inherit;border-radius:6px;padding:6px 9px}.radar-sca-board-tools input:focus,.radar-sca-board-tools select:focus,.radar-sca-component-card select:focus{outline-offset:1px;outline:2px solid #4a90d9b3}.radar-sca-board-legend{min-height:34px;color:var(--fab-text-2,#7a8599);justify-content:flex-end;align-items:center;font-size:.75rem;display:flex}.radar-sca-board-scroll{border:1px solid var(--fab-border,#2a3040);border-radius:8px;overflow:auto}.radar-sca-board{background:var(--fab-border,#2a3040);grid-template-columns:154px repeat(4,minmax(245px,1fr));gap:1px;min-width:1180px;display:grid}.radar-sbom-board{grid-template-columns:154px repeat(5,minmax(260px,1fr));min-width:1510px}.radar-sca-board-corner,.radar-sca-board-header,.radar-sca-row-header,.radar-sca-board-cell{background:var(--fab-bg-surface,#1a1f2e);min-width:0}.radar-sca-board-corner,.radar-sca-board-header{z-index:3;min-height:104px;padding:12px;position:sticky;top:0}.radar-sca-board-corner{z-index:4;left:0}.radar-sca-board-corner strong,.radar-sca-board-corner span,.radar-sca-board-header strong,.radar-sca-board-header span,.radar-sca-board-header small,.radar-sca-row-header strong,.radar-sca-row-header span{display:block}.radar-sca-board-corner strong,.radar-sca-board-header strong,.radar-sca-row-header strong{color:var(--fab-text-1,#e0e4ea);font-size:.78rem}.radar-sca-board-corner span,.radar-sca-board-header span,.radar-sca-row-header span{color:var(--fab-text-2,#7a8599);margin-top:4px;font-size:.7rem}.radar-sca-board-header small{color:var(--fab-text-2,#7a8599);margin-top:8px;font-size:.7rem;line-height:1.35}.radar-sca-board-header--evidence-missing{box-shadow:inset 0 3px #94a3b8}.radar-sca-board-header--commercial-approved{box-shadow:inset 0 3px #4ade80}.radar-sca-board-header--commercial-conditional{box-shadow:inset 0 3px #fbbf24}.radar-sca-board-header--separate-license-required{box-shadow:inset 0 3px #f87171}.radar-sbom-board-header--evidence-incomplete{box-shadow:inset 0 3px #94a3b8}.radar-sbom-board-header--release-ready{box-shadow:inset 0 3px #4ade80}.radar-sbom-board-header--release-ready-with-obligations{box-shadow:inset 0 3px #fbbf24}.radar-sbom-board-header--remediate-before-release{box-shadow:inset 0 3px #fb923c}.radar-sbom-board-header--blocked-exception-required{box-shadow:inset 0 3px #f87171}.radar-sca-row-header{z-index:2;min-height:150px;padding:12px;position:sticky;left:0}.radar-sca-row-header--needs-review{box-shadow:inset 3px 0 #94a3b8}.radar-sca-row-header--in-review{box-shadow:inset 3px 0 #60a5fa}.radar-sca-row-header--cleared{box-shadow:inset 3px 0 #4ade80}.radar-sca-row-header--action-required{box-shadow:inset 3px 0 #f87171}.radar-sca-board-cell{align-content:start;gap:8px;min-height:150px;padding:8px;transition:background .15s,box-shadow .15s;display:grid}.radar-sca-board-cell.is-drop-target{background:#4a90d91f;box-shadow:inset 0 0 0 2px #4a90d9b3}.radar-sca-cell-empty{color:var(--fab-text-2,#7a8599);place-self:center;font-size:.72rem}.radar-sca-component-card{min-width:0;color:var(--fab-text-1,#e0e4ea);border:1px solid var(--fab-border,#2a3040);cursor:grab;background:#080c1494;border-left-width:3px;border-radius:7px;padding:9px}.radar-sca-component-card--evidence-missing{border-left-color:#94a3b8}.radar-sca-component-card--commercial-approved{border-left-color:#4ade80}.radar-sca-component-card--commercial-conditional{border-left-color:#fbbf24}.radar-sca-component-card--separate-license-required{border-left-color:#f87171}.radar-sbom-component-card--evidence-incomplete{border-left-color:#94a3b8}.radar-sbom-component-card--release-ready{border-left-color:#4ade80}.radar-sbom-component-card--release-ready-with-obligations{border-left-color:#fbbf24}.radar-sbom-component-card--remediate-before-release{border-left-color:#fb923c}.radar-sbom-component-card--blocked-exception-required{border-left-color:#f87171}.radar-sca-component-card.is-dragging{opacity:.45}.radar-sca-card-heading{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;display:grid}.radar-sca-card-heading strong{text-overflow:ellipsis;min-width:0;color:var(--fab-text-1,#e0e4ea);font-size:.77rem;overflow:hidden}.radar-sca-card-heading span{color:var(--fab-text-2,#7a8599);font-size:.68rem}.radar-sca-card-license{color:var(--fab-text-1,#b0bac9);overflow-wrap:anywhere;margin-top:6px;font-size:.72rem}.radar-sca-card-meta{color:var(--fab-text-2,#7a8599);overflow-wrap:anywhere;margin-top:4px;font-size:.66rem}.radar-sbom-card-purl{color:#60a5fa;overflow-wrap:anywhere;margin-top:5px;font-family:JetBrains Mono,monospace;font-size:.64rem}.radar-sbom-advisory{background:#f871710f;border:1px solid #f8717133;border-radius:6px;gap:2px;margin-top:7px;padding:7px;display:grid}.radar-sbom-advisory strong{color:var(--fab-text-1,#e0e4ea);font-size:.68rem}.radar-sbom-advisory span,.radar-sbom-advisory small,.radar-sbom-no-advisory{color:var(--fab-text-2,#7a8599);font-size:.62rem;line-height:1.35}.radar-sbom-no-advisory{color:#4ade80;margin-top:7px}.radar-sca-card-footer{grid-template-columns:minmax(0,1fr) minmax(105px,132px);align-items:center;gap:7px;margin-top:8px;display:grid}.radar-sca-component-card select{min-height:28px;padding:3px 6px;font-size:.68rem}.radar-sca-review-source{font-size:.65rem;font-weight:700}.radar-sca-review-source--policy{color:#94a3b8}.radar-sca-review-source--reviewer{color:#60a5fa}.radar-sca-card-rationale{border-top:1px solid var(--fab-border,#2a3040);color:var(--fab-text-2,#7a8599);overflow-wrap:anywhere;margin-top:7px;padding-top:7px;font-size:.67rem;line-height:1.35}.radar-sca-show-more{color:#60a5fa;min-height:30px;font:inherit;cursor:pointer;background:#4a90d914;border:1px solid #4a90d947;border-radius:6px;font-size:.7rem;font-weight:700}.radar-sca-show-more:hover{background:#4a90d926}.radar-sbom-actions{flex-wrap:wrap;gap:8px;display:flex}.radar-sbom-button{min-height:34px;color:var(--fab-text-1,#e0e4ea);cursor:pointer;background:#4a90d91f;border:1px solid #4a90d952;border-radius:7px;align-items:center;gap:7px;padding:7px 12px;font-family:inherit;font-size:.82rem;font-weight:700;display:inline-flex}.radar-sbom-button:hover:not(:disabled){background:#4a90d933;border-color:#4a90d980}.radar-sbom-button:disabled{cursor:not-allowed;opacity:.5}@media (width<=980px){.radar-sca-kpis,.radar-sbom-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.radar-sca-title-row{flex-direction:column}.radar-sca-generated{white-space:normal}.radar-sca-board-tools{grid-template-columns:1fr 1fr}.radar-sca-board-legend{grid-column:1/-1;justify-content:flex-start}}.radar-tabs{background:var(--fab-bg-surface,#1a1f2e);border-radius:10px;gap:4px;margin-bottom:20px;padding:4px;display:flex}.radar-tab{color:var(--fab-text-2,#7a8599);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:10px 18px;font-family:inherit;font-size:.85rem;font-weight:500;transition:all .2s}.radar-tab:hover{color:var(--fab-text-1,#b0bac9);background:#ffffff0a}.radar-tab.active{background:var(--fab-accent,#4a90d9);color:#fff}.sec-finding-row:hover{background:#ffffff08}.sec-row-chevron{color:var(--fab-text-muted,#4b5563);font-size:.6rem;transition:transform .15s}.sec-reveal-btn:hover{color:#fff!important;background:#406abf40!important}.sec-detail-row td{background:0 0}.sec-code-preview{transition:all .2s}.sast-step{border-radius:6px;flex:1;align-items:center;gap:8px;padding:6px 8px;transition:all .2s;display:flex}.sast-step.active{background:#c46b2d26}.sast-step.done .sast-step-num{color:#fff;background:#10b981}.sast-step.active .sast-step-num{color:#fff;background:#c46b2d;box-shadow:0 0 12px #c46b2d66}.sast-step.pending .sast-step-num{color:var(--fab-text-2,#7a8599);background:#ffffff14}.sast-step-num{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:.68rem;font-weight:700;transition:all .2s;display:flex}.sast-step-info{flex:1;min-width:0}.sast-step-label{color:var(--fab-text-1,#e0e4ea);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;font-weight:600;overflow:hidden}.sast-step.pending .sast-step-label{color:var(--fab-text-2,#7a8599)}.sast-step-sub{color:var(--fab-text-2,#7a8599);white-space:nowrap;text-overflow:ellipsis;font-size:.6rem;overflow:hidden}.sast-step-arrow{color:var(--fab-text-2,#7a8599);opacity:.5;flex-shrink:0;margin:0 2px;font-size:.8rem}.sast-context{flex-direction:column;gap:14px;display:flex}.sast-context-header{align-items:center;gap:10px;display:flex}.sast-sev-badge{text-transform:uppercase;color:#fff;border-radius:4px;padding:3px 10px;font-size:.7rem;font-weight:700;display:inline-block}.sast-rule{color:var(--fab-text-1,#e0e4ea);font-size:.9rem;font-weight:600}.sast-context-file{border:1px solid var(--fab-border,#2a3040);background:#ffffff08;border-radius:8px;align-items:center;gap:8px;padding:8px 12px;font-size:.78rem;display:flex}.sast-file-path{color:var(--fab-text-1,#b0bac9);word-break:break-all;font-family:JetBrains Mono,monospace}.sast-file-line{color:#c46b2d;white-space:nowrap;margin-left:auto;font-family:JetBrains Mono,monospace;font-weight:600}.sast-context-snippet{background:#c46b2d0f;border-left:3px solid #c46b2d;border-radius:0 6px 6px 0;padding:10px 14px}.sast-snippet-label{color:var(--fab-text-2,#7a8599);text-transform:uppercase;letter-spacing:.3px;margin-bottom:4px;font-size:.68rem}.sast-snippet-code{color:#fb923c;word-break:break-all;font-family:JetBrains Mono,monospace;font-size:.75rem}.sast-context-code{border:1px solid var(--fab-border,#2a3040);background:#0003;border-radius:8px;max-height:260px;font-family:JetBrains Mono,monospace;font-size:.72rem;overflow:auto}.sast-code-loading{text-align:center;color:var(--fab-text-2,#7a8599);justify-content:center;align-items:center;gap:8px;padding:20px;display:flex}.sast-code-line{padding:1px 12px;line-height:1.7;display:flex}.sast-code-highlight{background:#fb923c1f}.sast-code-ln{text-align:right;width:36px;color:var(--fab-text-2,#7a8599);-webkit-user-select:none;user-select:none;border-right:1px solid var(--fab-border,#2a3040);flex-shrink:0;margin-right:10px;padding-right:10px}.sast-code-text{color:var(--fab-text-1,#b0bac9)}.sast-code-highlight .sast-code-text{color:#c46b2d;font-weight:600}.sast-code-na{text-align:center;color:var(--fab-text-2,#7a8599);padding:20px;font-size:.78rem}.sast-generate{justify-content:center;align-items:center;min-height:200px;display:flex}.sast-generate-status{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.sast-generate-title{color:var(--fab-text-1,#e0e4ea);font-size:1rem;font-weight:600}.sast-generate-sub{color:var(--fab-text-2,#7a8599);font-size:.78rem}.sast-error{text-align:center;color:#f87171;flex-direction:column;align-items:center;gap:8px;display:flex}.sast-error-title{font-size:.9rem;font-weight:600}.sast-error-msg{color:var(--fab-text-2,#7a8599);max-width:400px;font-size:.75rem}.sast-select{flex-direction:column;gap:14px;display:flex}.sast-select-title{color:var(--fab-text-1,#e0e4ea);align-items:center;gap:8px;font-size:.9rem;font-weight:600;display:flex}.sast-options{flex-direction:column;gap:8px;display:flex}.sast-option-card{border:1px solid var(--fab-border,#2a3040);cursor:pointer;background:#ffffff05;border-radius:10px;padding:14px 16px;transition:all .2s}.sast-option-card:hover{background:#c46b2d0a;border-color:#c46b2d66}.sast-option-card.active{background:#c46b2d14;border-color:#c46b2d;box-shadow:0 0 0 1px #c46b2d4d}.sast-option-header{align-items:center;gap:10px;margin-bottom:6px;display:flex}.sast-option-radio{border:2px solid var(--fab-border,#2a3040);border-radius:50%;flex-shrink:0;width:16px;height:16px;transition:all .2s;position:relative}.sast-option-radio.checked{border-color:#c46b2d}.sast-option-radio.checked:after{content:"";background:#c46b2d;border-radius:50%;width:6px;height:6px;position:absolute;top:3px;left:3px}.sast-option-label{color:var(--fab-text-1,#e0e4ea);font-size:.85rem;font-weight:600}.sast-option-rec{color:#10b981;background:#10b98133;border-radius:3px;padding:2px 6px;font-size:.62rem;font-weight:600}.sast-option-risk{margin-left:auto;font-size:.68rem;font-weight:600}.sast-option-desc{color:var(--fab-text-2,#7a8599);margin-bottom:6px;padding-left:26px;font-size:.78rem;line-height:1.5}.sast-option-diff{background:#00000026;border-radius:6px;margin-left:26px;padding:8px 12px;font-family:JetBrains Mono,monospace;font-size:.7rem;overflow-x:auto}.sast-diff-removed{color:#f87171}.sast-diff-added{color:#4ade80}.sast-apply{flex-direction:column;gap:14px;display:flex}.sast-apply-title{color:var(--fab-text-1,#e0e4ea);align-items:center;gap:8px;font-size:.9rem;font-weight:600;display:flex}.sast-apply-file{color:var(--fab-text-1,#b0bac9);background:#ffffff08;border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-family:JetBrains Mono,monospace;font-size:.78rem;display:flex}.sast-apply-line{color:#c46b2d;margin-left:auto;font-weight:600}.sast-apply-diff{border:1px solid var(--fab-border,#2a3040);background:#00000026;border-radius:8px;padding:12px 16px;font-family:JetBrains Mono,monospace;font-size:.72rem}.sast-diff-header{color:var(--fab-text-2,#7a8599);text-transform:uppercase;letter-spacing:.3px;margin-bottom:8px;font-family:inherit;font-size:.68rem}.sast-apply-warning{color:#fbbf24;background:#fbbf240f;border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-size:.75rem;display:flex}.sast-apply-status{min-height:32px}.sast-status-ok{color:#10b981;background:#10b98114;border-radius:8px;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;display:flex}.sast-status-err{color:#f87171;background:#f8717114;border-radius:8px;align-items:center;gap:8px;padding:10px;font-size:.85rem;display:flex}.sast-verify{justify-content:center;align-items:center;min-height:200px;display:flex}.sast-verify-status{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.sast-verify-title{color:var(--fab-text-1,#e0e4ea);font-size:1rem;font-weight:600}.sast-verify-sub{color:var(--fab-text-2,#7a8599);font-size:.78rem}.sast-verify-ok{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:24px;display:flex}.sast-verify-icon-ok{color:#10b981;font-size:2.5rem}.sast-verify-title-ok{color:#10b981;font-size:1.2rem;font-weight:700}.sast-verify-warn{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:24px;display:flex}.sast-verify-icon-warn{color:#fbbf24;font-size:2.5rem}.sast-verify-title-warn{color:#fbbf24;font-size:1.2rem;font-weight:700}.sast-verify-desc{color:var(--fab-text-2,#7a8599);max-width:420px;font-size:.85rem;line-height:1.5}.sast-verify-error{color:#f87171;margin-top:6px;font-size:.72rem}.sast-explain-wrap{margin-top:12px}.sast-explain-btn{color:#a78bfa;cursor:pointer;background:#8b5cf61a;border:1px solid #8b5cf64d;border-radius:6px;align-items:center;gap:6px;padding:6px 14px;font-family:inherit;font-size:.75rem;font-weight:600;transition:all .2s;display:inline-flex}.sast-explain-btn:hover:not(:disabled){background:#8b5cf62e;border-color:#8b5cf680}.sast-explain-btn:disabled{opacity:.6;cursor:wait}.sast-explain-panel{background:#8b5cf60a;border:1px solid #8b5cf626;border-radius:8px;margin-top:10px;padding:14px 16px;animation:.3s sast-fade-in}.sast-explain-error{color:#f87171;margin-top:6px;font-size:.72rem}@keyframes sast-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.sast-manual-note{color:var(--fab-text-1,#b0bac9);background:#3b82f60f;border:1px solid #3b82f633;border-radius:8px;align-items:flex-start;gap:10px;padding:16px;font-size:.85rem;display:flex}.sast-manual-explanation{color:var(--fab-text-2,#7a8599);white-space:pre-wrap;margin-top:8px;font-size:.78rem}.sast-empty{text-align:center;color:var(--fab-text-2,#7a8599);padding:40px;font-size:.9rem}.sast-fix-btn{color:#c46b2d;cursor:pointer;white-space:nowrap;background:#c46b2d1f;border:1px solid #c46b2d4d;border-radius:5px;align-items:center;gap:4px;padding:3px 10px;font-family:inherit;font-size:.68rem;font-weight:600;transition:all .15s;display:inline-flex}.sast-fix-btn:hover{background:#c46b2d38;border-color:#c46b2d80;transform:translateY(-1px);box-shadow:0 2px 8px #c46b2d33}.sast-fix-btn:active{transform:translateY(0)}.fab-btn-danger-soft{color:#c46b2d!important;background:#c46b2d26!important;border-color:#c46b2d66!important}.fab-btn-danger-soft:hover{background:#c46b2d40!important}:root{--fab-gold:#e6b033;--fab-gold-light:#eeca77;--fab-gold-dark:#b68616;--fab-shield-blue:#2d72d2;--fab-shield-dark:#1f5093;--fab-shield-light:#81aae4;--fab-critical:#df3a3a;--fab-critical-bg:#df3a3a1f;--fab-high:#ee7c2b;--fab-high-bg:#ee7c2b1f;--fab-medium:#f2ad0d;--fab-medium-bg:#f2ad0d1f;--fab-low:#39c;--fab-low-bg:#3399cc1f;--fab-success:#2eb867;--fab-success-bg:#2eb8671f;--fab-info:#478cd1;--fab-info-bg:#478cd11f;--fab-bg-0:#0e121b;--fab-bg-1:#151923;--fab-bg-2:#1c212c;--fab-bg-3:#252a37;--fab-bg-hover:#292f3d;--fab-bg-active:#2d3443;--fab-bg-glass:#1b202dbf;--fab-bg-card:#202532d9;--fab-border:#303541;--fab-border-light:#3d4352;--fab-border-hover:#414858;--fab-border-focus:var(--fab-shield-blue);--fab-text-0:#ebecef;--fab-text-1:#b0b5bf;--fab-text-2:#737a8c;--fab-text-muted:#575d6b;--fab-font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--fab-font-mono:"JetBrains Mono", "Fira Code", "Cascadia Code", monospace;--fab-fs-xs:.6875rem;--fab-fs-sm:.75rem;--fab-fs-base:.8125rem;--fab-fs-md:.875rem;--fab-fs-lg:1rem;--fab-fs-xl:1.25rem;--fab-fs-2xl:1.5rem;--fab-fs-3xl:2rem;--fab-fs-hero:3rem;--fab-fw-normal:400;--fab-fw-medium:500;--fab-fw-semi:600;--fab-fw-bold:700;--fab-lh-tight:1.2;--fab-lh-normal:1.5;--fab-lh-relaxed:1.7;--fab-space-0:0;--fab-space-1:.25rem;--fab-space-2:.5rem;--fab-space-3:.75rem;--fab-space-4:1rem;--fab-space-5:1.25rem;--fab-space-6:1.5rem;--fab-space-8:2rem;--fab-space-10:2.5rem;--fab-space-12:3rem;--fab-space-16:4rem;--fab-radius-sm:4px;--fab-radius-md:8px;--fab-radius-lg:12px;--fab-radius-xl:16px;--fab-radius-full:9999px;--fab-shadow-sm:0 1px 3px #0000004d;--fab-shadow-md:0 4px 12px #00000059;--fab-shadow-lg:0 8px 30px #0006;--fab-shadow-glow:0 0 20px #2d72d233;--fab-ease:cubic-bezier(.4, 0, .2, 1);--fab-duration:.18s;--fab-dur-slow:.35s;--fab-z-base:1;--fab-z-sticky:100;--fab-z-dropdown:200;--fab-z-modal:300;--fab-z-toast:400;--fab-z-tooltip:500;--fab-sidebar-w:240px;--fab-sidebar-w-min:56px;--fab-header-h:48px;--fab-content-max:1200px;--fab-dock-w:380px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;font-size:16px}body{font-family:var(--fab-font-sans);font-size:var(--fab-fs-base);font-weight:var(--fab-fw-normal);line-height:var(--fab-lh-normal);color:var(--fab-text-0);background:var(--fab-bg-0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}img,picture,video,canvas,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none}a{color:var(--fab-shield-blue);transition:color var(--fab-duration) var(--fab-ease);text-decoration:none}a:hover{color:var(--fab-shield-light)}h1,h2,h3,h4,h5,h6{font-weight:var(--fab-fw-semi);line-height:var(--fab-lh-tight);color:var(--fab-text-0)}code,pre{font-family:var(--fab-font-mono)}:focus-visible{outline:2px solid var(--fab-border-focus);outline-offset:2px}::selection{background:var(--fab-shield-blue);color:#fff}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--fab-bg-1)}::-webkit-scrollbar-thumb{background:var(--fab-border-light);border-radius:var(--fab-radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--fab-text-2)}@keyframes fab-fade-in{0%{opacity:0}to{opacity:1}}@keyframes fab-fade-out{0%{opacity:1}to{opacity:0}}@keyframes fab-slide-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes fab-slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fab-slide-down{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes fab-scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes fab-spin{to{transform:rotate(360deg)}}@keyframes fab-pulse{0%,to{opacity:1}50%{opacity:.5}}.fab-anim-fade-in{animation:fab-fade-in .3s var(--fab-ease) both}.fab-anim-slide-up{animation:fab-slide-up .3s var(--fab-ease) both}.fab-anim-slide-in{animation:fab-slide-in .3s var(--fab-ease) both}.fab-anim-pulse{animation:fab-pulse 2s var(--fab-ease) infinite}.fab-icon{vertical-align:middle;flex-shrink:0;width:20px;height:20px;display:inline-block}.fab-icon-sm{width:16px;height:16px}.fab-icon-lg{width:24px;height:24px}.app-frame{grid-template-columns:var(--fab-sidebar-w) minmax(0, 1fr) var(--fab-dock-current-w,var(--fab-dock-w));min-height:100vh;display:grid}.app-frame--dock-collapsed{grid-template-columns:var(--fab-sidebar-w) minmax(0, 1fr)}.app-frame--chat-maximized{grid-template-columns:0 0 minmax(0,1fr)}.app-frame--chat-maximized>.sidebar,.app-frame--chat-maximized>.app-shell{display:none}@media (width<=1280px){.app-frame{grid-template-columns:var(--fab-sidebar-w) minmax(0, 1fr)}.app-frame--chat-maximized{grid-template-columns:0 0 minmax(0,1fr)}}.app-shell{flex-direction:column;width:100%;min-width:0;min-height:100vh;display:flex}.app-shell__content{padding:var(--fab-space-8);flex:1;width:100%;min-width:0;max-width:1400px;margin:0 auto;overflow-y:auto}.sidebar,.app-sidebar{background:var(--fab-bg-1);border-right:1px solid var(--fab-border);padding:var(--fab-space-5) 0;flex-direction:column;height:100vh;display:flex;position:sticky;top:0}.sidebar-brand{align-items:center;gap:var(--fab-space-3);padding:0 var(--fab-space-6) var(--fab-space-6);border-bottom:1px solid var(--fab-border);margin-bottom:var(--fab-space-4);display:flex}.sidebar-logo{filter:drop-shadow(0 0 8px #e6b0334d);width:28px;height:28px}.sidebar-title{font-size:var(--fab-fs-md);font-weight:var(--fab-fw-bold);letter-spacing:.12em;background:linear-gradient(135deg, var(--fab-gold), var(--fab-gold-light));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.sidebar-nav,.nav-stack{gap:var(--fab-space-1);padding:0 var(--fab-space-3);flex-direction:column;flex:1;display:flex;overflow-y:auto}.nav-item,.nav-link{align-items:center;gap:var(--fab-space-3);padding:var(--fab-space-2) var(--fab-space-3);border-radius:var(--fab-radius-md);font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-medium);color:var(--fab-text-1);transition:all var(--fab-duration) var(--fab-ease);text-align:left;cursor:pointer;background:0 0;border:0;width:100%;text-decoration:none;display:flex}.nav-item svg,.nav-link svg{flex-shrink:0;width:18px;height:18px}.nav-item:hover,.nav-link:hover{background:var(--fab-bg-hover);color:var(--fab-text-0)}.nav-item.active,.nav-link--active{color:var(--fab-shield-light);background:#2d72d21f}.nav-item.active svg,.nav-link--active svg{color:var(--fab-shield-blue)}.nav-link__copy{flex-direction:column;gap:2px;min-width:0;display:flex}.nav-link__copy strong{font-weight:var(--fab-fw-semi);font-size:var(--fab-fs-sm);color:inherit}.nav-link__copy small{color:var(--fab-text-2);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.nav-section-label{font-size:10px;font-weight:var(--fab-fw-bold);letter-spacing:.1em;text-transform:uppercase;color:var(--fab-text-muted);padding:var(--fab-space-5) var(--fab-space-5) var(--fab-space-2);margin-top:var(--fab-space-2)}.nav-group{flex-direction:column;gap:2px;display:flex}.nav-group__toggle{align-items:center;gap:var(--fab-space-3);padding:var(--fab-space-2) var(--fab-space-3);border-radius:var(--fab-radius-md);font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-medium);color:var(--fab-text-1);text-align:left;cursor:pointer;background:0 0;border:0;width:100%;display:flex}.nav-group__toggle:hover{background:var(--fab-bg-hover);color:var(--fab-text-0)}.nav-group__toggle svg{flex-shrink:0;width:18px;height:18px}.nav-group__chevron{transition:transform var(--fab-duration) var(--fab-ease);margin-left:auto}.nav-group--expanded .nav-group__chevron{transform:rotate(90deg)}.nav-group__children{padding-left:var(--fab-space-6);flex-direction:column;gap:2px;display:flex}.nav-link--child{font-size:var(--fab-fs-sm);padding:var(--fab-space-1) var(--fab-space-3)}.nav-link--child__dot{background:var(--fab-text-muted);border-radius:50%;flex-shrink:0;width:4px;height:4px}.sidebar-bottom,.app-sidebar__user-section{padding:var(--fab-space-3) var(--fab-space-4);border-top:1px solid var(--fab-border);gap:var(--fab-space-2);flex-direction:column;margin-top:auto;display:flex}.sidebar-user,.app-sidebar__user-pill{align-items:center;gap:var(--fab-space-2);display:flex}.user-avatar,.app-sidebar__user-pill .material-symbols-outlined{background:linear-gradient(135deg, var(--fab-shield-blue), var(--fab-shield-dark));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:flex}.user-info{flex:1;min-width:0}.user-name,.app-sidebar__user-name{font-size:13px;font-weight:var(--fab-fw-semi);color:var(--fab-text-0);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.user-role,.user-email{color:var(--fab-text-2);font-size:11px}.btn-icon{color:var(--fab-text-2);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px;transition:all .2s}.btn-icon:hover{color:var(--fab-text-0);background:var(--fab-bg-hover)}.btn-icon svg{width:16px;height:16px}.app-sidebar__project-select{width:100%;padding:var(--fab-space-2) var(--fab-space-3);font-size:var(--fab-fs-sm);background:var(--fab-bg-0);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);color:var(--fab-text-0)}.app-sidebar__signout{align-items:center;gap:var(--fab-space-2);padding:var(--fab-space-2) var(--fab-space-3);border-radius:var(--fab-radius-md);font-size:var(--fab-fs-sm);color:var(--fab-text-2);cursor:pointer;background:0 0;border:1px solid #0000;display:inline-flex}.app-sidebar__signout:hover{color:var(--fab-critical);background:var(--fab-critical-bg)}.app-sidebar__signout svg{width:16px;height:16px}.page-title{font-size:var(--fab-fs-2xl);font-weight:var(--fab-fw-bold);color:var(--fab-text-0);margin-bottom:var(--fab-space-1)}.page-subtitle{font-size:var(--fab-fs-sm);color:var(--fab-text-2);margin-bottom:var(--fab-space-6)}.section-header{justify-content:space-between;align-items:flex-start;gap:var(--fab-space-4);margin-bottom:var(--fab-space-6);display:flex}.section-header__copy{flex-direction:column;gap:4px;min-width:0;display:flex}.section-header__eyebrow{font-size:11px;font-weight:var(--fab-fw-semi);text-transform:uppercase;letter-spacing:.06em;color:var(--fab-text-muted)}.section-header__title{font-size:var(--fab-fs-2xl);font-weight:var(--fab-fw-bold);color:var(--fab-text-0);line-height:var(--fab-lh-tight);margin:0}.section-header__description{font-size:var(--fab-fs-sm);color:var(--fab-text-2);max-width:720px;line-height:var(--fab-lh-normal)}.section-header__actions{gap:var(--fab-space-2);flex-shrink:0;display:flex}.eyebrow{align-items:center;gap:var(--fab-space-2);font-size:11px;font-weight:var(--fab-fw-semi);text-transform:uppercase;letter-spacing:.06em;color:var(--fab-text-muted);display:inline-flex}.muted-copy{color:var(--fab-text-2);font-size:var(--fab-fs-sm);line-height:var(--fab-lh-normal)}.lede{color:var(--fab-text-1);font-size:var(--fab-fs-md);line-height:var(--fab-lh-normal)}.stats-grid,.metric-grid,.workspace-summary,.metric-strip{gap:var(--fab-space-4);margin-bottom:var(--fab-space-6);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.stat-card,.metric-card,.workspace-summary__card,.metric-strip__item{background:var(--fab-bg-card);border:1px solid var(--fab-border);border-radius:var(--fab-radius-lg);padding:var(--fab-space-5);gap:var(--fab-space-2);flex-direction:column;transition:border-color .2s;display:flex}.stat-card:hover,.metric-card:hover,.workspace-summary__card:hover{border-color:var(--fab-border-light)}.stat-icon{border-radius:var(--fab-radius-md);justify-content:center;align-items:center;width:36px;height:36px;display:flex}.stat-icon svg{width:18px;height:18px}.stat-icon.blue,.stat-icon-blue{color:var(--fab-shield-blue);background:#2d72d21f}.stat-icon.green,.stat-icon-green{color:#34b268;background:#34b2681f}.stat-icon.red,.stat-icon-red{color:#d74242;background:#d22d2d1f}.stat-icon.amber,.stat-icon-gold{color:#e6911a;background:#e6911a1f}.stat-value,.metric-card strong,.workspace-summary__card strong{font-size:var(--fab-fs-2xl);font-weight:var(--fab-fw-bold);color:var(--fab-text-0)}.metric-strip__value{font-size:var(--fab-fs-xl);font-weight:var(--fab-fw-bold);color:var(--fab-text-0);line-height:1.15}.stat-label,.metric-strip__label,.metric-card small,.workspace-summary__card small{font-size:var(--fab-fs-xs);color:var(--fab-text-2);text-transform:uppercase;letter-spacing:.05em}.metric-strip__delta{font-size:var(--fab-fs-xs);color:var(--fab-text-2)}.metric-strip__delta.tone-teal{color:var(--fab-success)}.metric-strip__delta.tone-error{color:var(--fab-critical)}.section-card,.plain-card,.card,.sidebar-card,.identity-card{background:var(--fab-bg-card);border:1px solid var(--fab-border);border-radius:var(--fab-radius-lg);padding:var(--fab-space-5);margin-bottom:var(--fab-space-5)}.section-card h2,.card h2,.card-title{font-size:var(--fab-fs-md);font-weight:var(--fab-fw-semi);color:var(--fab-text-0);margin-bottom:var(--fab-space-4)}.section-card h3,.card h3{font-size:var(--fab-fs-md);font-weight:var(--fab-fw-semi);color:var(--fab-text-0);margin-bottom:var(--fab-space-3)}.section-card p,.card p,.plain-card p{font-size:var(--fab-fs-sm);color:var(--fab-text-1);line-height:var(--fab-lh-normal)}.section-card p>strong:first-child,.card p>strong:first-child{margin-right:var(--fab-space-1);color:var(--fab-text-0)}.plain-card strong{font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-medium);color:var(--fab-text-0);line-height:var(--fab-lh-normal);overflow-wrap:anywhere;display:block}.plain-card small{font-size:var(--fab-fs-sm);color:var(--fab-text-2);line-height:var(--fab-lh-normal);letter-spacing:normal;text-transform:none;overflow-wrap:anywhere;display:block}.plain-card>small:first-child:not(:last-child){font-size:var(--fab-fs-xs);color:var(--fab-text-muted);letter-spacing:.05em;text-transform:uppercase}.plain-card code{font-size:var(--fab-fs-sm);overflow-wrap:anywhere;white-space:pre-wrap}.section-card__header,.card-header{justify-content:space-between;align-items:flex-start;gap:var(--fab-space-3);margin-bottom:var(--fab-space-4);display:flex}.section-card__header>div:first-child,.card-header>div:first-child{flex-direction:column;gap:2px;min-width:0;display:flex}.section-card__meta{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.section-card__meta small{font-size:var(--fab-fs-xs);color:var(--fab-text-muted);text-transform:uppercase;letter-spacing:.04em}.section-card__meta strong{font-size:var(--fab-fs-sm);color:var(--fab-text-1)}.repository-card__grid{gap:var(--fab-space-3) var(--fab-space-5);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.repository-card__grid--wide{grid-template-columns:1fr}.repository-card__grid>div{align-items:baseline;gap:var(--fab-space-2);flex-wrap:wrap;min-width:0;display:flex}.repository-card__grid>div>small{font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-semi);color:var(--fab-text-0);letter-spacing:normal;text-transform:none;line-height:var(--fab-lh-normal);flex-shrink:0}.repository-card__grid>div>strong{font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-normal);color:var(--fab-text-1);line-height:var(--fab-lh-normal);overflow-wrap:anywhere;flex:1 1 0;min-width:0}.workflow-stage-pipeline{padding-bottom:var(--fab-space-2);align-items:flex-start;display:flex;overflow-x:auto}.workflow-stage-pipeline__segment{flex:1 0 160px;align-items:flex-start;min-width:160px;display:flex}.workflow-stage-pipeline__connector{min-width:20px;height:1px;margin:17px var(--fab-space-3) 0;background:var(--fab-border-light);flex:1;display:block}.workflow-stage-pipeline__connector.health-healthy{background:var(--fab-success)}.workflow-stage-pipeline__connector.health-critical{background:var(--fab-critical)}.workflow-stage-pipeline__connector.health-watch{background:var(--fab-medium)}.workflow-stage-pipeline__connector.tone-primary{background:var(--fab-shield-blue)}.workflow-stage-pipeline__step{align-items:center;gap:var(--fab-space-2);text-align:center;flex-direction:column;min-width:120px;display:flex}.workflow-stage-pipeline__node{border:1px solid var(--fab-border-light);background:var(--fab-bg-2);width:34px;height:34px;color:var(--fab-text-1);font-size:var(--fab-fs-xs);font-weight:var(--fab-fw-semi);box-shadow:var(--fab-shadow-sm);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.workflow-stage-pipeline__node.health-healthy{background:var(--fab-success-bg);color:var(--fab-success);border-color:#2eb86773}.workflow-stage-pipeline__node.health-critical{background:var(--fab-critical-bg);color:var(--fab-critical);border-color:#df3a3a73}.workflow-stage-pipeline__node.health-watch{background:var(--fab-medium-bg);color:var(--fab-medium);border-color:#f2ad0d59}.workflow-stage-pipeline__node.tone-primary{color:var(--fab-shield-light);background:#2d72d21f;border-color:#2d72d273}.workflow-stage-pipeline__copy{gap:4px;display:grid}.workflow-stage-pipeline__copy strong{font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-medium);color:var(--fab-text-0);line-height:var(--fab-lh-normal)}.workflow-stage-pipeline__copy small{font-size:var(--fab-fs-sm);color:var(--fab-text-2);line-height:var(--fab-lh-normal)}.workflow-stage-pipeline__copy .workflow-stage-pipeline__timing,.workflow-stage-pipeline__timing{color:var(--fab-text-1);font-variant-numeric:tabular-nums;white-space:nowrap}.workflow-stage-pipeline__actions{min-height:32px;margin-top:var(--fab-space-1);justify-content:center;width:100%;display:flex}.workflow-stage-pipeline__button{white-space:nowrap;min-width:104px}.workflow-stage-pipeline__note{margin-top:var(--fab-space-3);font-size:var(--fab-fs-sm);color:var(--fab-text-2);line-height:var(--fab-lh-normal)}.workflow-run-metrics-grid{gap:var(--fab-space-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.workflow-run-metrics-grid>.plain-card{margin-bottom:0}.workflow-run-metrics-grid--secondary,.workflow-run-stage-detail{margin-top:var(--fab-space-4)}.workflow-run-view-nav{gap:var(--fab-space-2);margin-bottom:var(--fab-space-4);padding:var(--fab-space-2);border:1px solid var(--fab-border);border-radius:var(--fab-radius-sm);background:var(--fab-bg-1);flex-wrap:wrap;align-items:center;display:flex}.workflow-run-view-nav__link{min-height:30px;padding:var(--fab-space-1) var(--fab-space-3);border-radius:var(--fab-radius-sm);color:var(--fab-text-1);font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-semi);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.workflow-run-view-nav__link:hover,.workflow-run-view-nav__link--active{border-color:var(--fab-shield-blue);color:var(--fab-text-0);background:#2d72d21f}.workflow-run-page-context{gap:var(--fab-space-2);margin-bottom:var(--fab-space-4);color:var(--fab-text-2);font-size:var(--fab-fs-sm);flex-wrap:wrap;align-items:center;display:flex}.workflow-run-page-context code{color:var(--fab-text-2);font-family:var(--fab-font-mono);font-size:var(--fab-fs-xs)}.workflow-run-open-link{min-height:28px;padding:0 var(--fab-space-2);white-space:nowrap;text-decoration:none}.workflow-event-log-note{margin:0 0 var(--fab-space-4);color:var(--fab-text-2);font-size:var(--fab-fs-sm)}.workflow-output-summary-grid{gap:var(--fab-space-3);margin-bottom:var(--fab-space-4);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.workflow-output-summary-grid>div{align-content:start;gap:var(--fab-space-1);min-width:0;display:grid}.workflow-output-summary-grid>div>.eyebrow{margin-bottom:var(--fab-space-1)}.workflow-output-summary-grid>div>strong{color:var(--fab-text-0);font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-semi);line-height:var(--fab-lh-normal);overflow-wrap:anywhere;display:block}.workflow-output-summary-grid>div>small{color:var(--fab-text-2);font-size:var(--fab-fs-sm);line-height:var(--fab-lh-normal);overflow-wrap:anywhere;display:block}.workflow-output-summary-grid>.plain-card,.workflow-output-counter-grid>.plain-card{margin-bottom:0}.workflow-output-counter-grid{gap:var(--fab-space-2);margin-bottom:var(--fab-space-4);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));display:grid}.workflow-output-tabs{gap:var(--fab-space-2);margin-bottom:var(--fab-space-4);flex-wrap:wrap;display:flex}.workflow-output-tab{min-height:30px;padding:var(--fab-space-1) var(--fab-space-3);border:1px solid var(--fab-border);border-radius:var(--fab-radius-sm);background:var(--fab-bg-1);color:var(--fab-text-1);font:inherit;font-size:var(--fab-fs-sm);cursor:pointer;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.workflow-output-tab:hover,.workflow-output-tab--active{border-color:var(--fab-shield-blue);color:var(--fab-text-0);background:#2d72d21f}.workflow-output-view-block{gap:var(--fab-space-3);display:grid}.workflow-output-two-column{gap:var(--fab-space-4);grid-template-columns:minmax(0,1fr) minmax(240px,.45fr);align-items:start;display:grid}.workflow-output-filter-bar{gap:var(--fab-space-3);margin:var(--fab-space-4) 0;grid-template-columns:minmax(260px,1fr) minmax(280px,.9fr) auto;align-items:end;display:grid}.workflow-output-facets{gap:var(--fab-space-2);grid-template-columns:repeat(auto-fit,minmax(136px,1fr));min-width:0;display:grid}.workflow-output-search,.workflow-output-facet{width:100%;min-width:0}input.workflow-output-search{max-width:420px;margin-bottom:var(--fab-space-3)}.workflow-output-filter-count{min-height:34px;padding:0 var(--fab-space-3);border:1px solid var(--fab-border);border-radius:var(--fab-radius-full);background:var(--fab-bg-1);color:var(--fab-text-2);font-size:var(--fab-fs-xs);font-weight:var(--fab-fw-semi);white-space:nowrap;place-self:end;align-items:center;display:inline-flex}.workflow-output-group,.workflow-output-list{gap:var(--fab-space-2);display:grid}.workflow-output-list{margin:0;padding:0;list-style:none}.workflow-output-list li{padding-bottom:var(--fab-space-2);border-bottom:1px solid var(--fab-border);gap:2px;display:grid}.workflow-output-list li:last-child{border-bottom:0}.workflow-output-code{padding:var(--fab-space-3);border:1px solid var(--fab-border);border-radius:var(--fab-radius-sm);background:var(--fab-bg-0);color:var(--fab-text-1);font-size:var(--fab-fs-xs);white-space:pre;margin:0;line-height:1.55;overflow:auto}.workflow-mermaid-preview{gap:var(--fab-space-3);display:grid}.workflow-mermaid-preview__canvas{min-height:280px;padding:var(--fab-space-4);border:1px solid var(--fab-border);border-radius:var(--fab-radius-sm);background:var(--fab-bg-0);color:var(--fab-text-2);font-size:var(--fab-fs-sm);place-items:center;display:grid;overflow:auto}.workflow-mermaid-preview__image{width:100%;min-width:640px;max-width:100%;height:auto;display:block}.workflow-mermaid-source{gap:var(--fab-space-2);display:grid}.workflow-mermaid-source summary{cursor:pointer;width:fit-content;color:var(--fab-text-1);font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-semi)}.workflow-json-tree{gap:var(--fab-space-2);color:var(--fab-text-1);font-size:var(--fab-fs-sm);display:grid}.workflow-json-tree summary{align-items:center;gap:var(--fab-space-2);cursor:pointer;list-style:none;display:inline-flex}.workflow-json-tree summary::-webkit-details-marker{display:none}.workflow-json-tree ul{gap:var(--fab-space-1);margin:var(--fab-space-2) 0 0 var(--fab-space-3);padding:0 0 0 var(--fab-space-3);border-left:1px solid var(--fab-border);list-style:none;display:grid}.workflow-json-tree li{gap:var(--fab-space-2);grid-template-columns:minmax(84px,.24fr) minmax(0,1fr);align-items:start;min-width:0;display:grid}.workflow-json-tree__key{color:var(--fab-text-2);font-family:var(--fab-font-mono);font-size:var(--fab-fs-xs);overflow-wrap:anywhere}.workflow-json-tree__scalar{color:var(--fab-text-0);font-family:var(--fab-font-mono);font-size:var(--fab-fs-xs);overflow-wrap:anywhere}.workflow-feature-tree{gap:var(--fab-space-3);display:grid}.workflow-feature-tree .plain-card{gap:var(--fab-space-2);display:grid}.workflow-mermaid-flow{gap:var(--fab-space-3);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:stretch;display:grid}.workflow-mermaid-flow__node,.workflow-mermaid-flow>span{padding:var(--fab-space-3);border:1px solid var(--fab-border);border-radius:var(--fab-radius-sm);background:var(--fab-bg-1);align-content:start;gap:4px;min-width:0;display:grid}.workflow-mermaid-flow__node strong,.workflow-mermaid-flow__node small,.workflow-mermaid-flow>span{overflow-wrap:anywhere}.workflow-output-svg-wrap{overflow:auto}.workflow-output-svg{border:1px solid var(--fab-border);border-radius:var(--fab-radius-sm);background:var(--fab-bg-0);width:100%;min-width:640px;height:auto;display:block}.workflow-output-svg__title,.workflow-output-svg__label,.workflow-output-svg__value{fill:var(--fab-text-0);font-family:var(--fab-font-sans)}.workflow-output-svg__title{font-size:16px;font-weight:var(--fab-fw-semi)}.workflow-output-svg__label{fill:var(--fab-text-2);font-size:12px}.workflow-output-svg__value{font-size:22px;font-weight:var(--fab-fw-semi)}.workflow-insight-graph{gap:var(--fab-space-4);display:grid}.workflow-insight-graph--empty{padding:var(--fab-space-4);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:var(--fab-bg-1)}.workflow-insight-graph--empty strong{color:var(--fab-text-0);font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-medium);display:block}.workflow-insight-graph--empty small{margin-top:var(--fab-space-1);color:var(--fab-text-2);font-size:var(--fab-fs-xs);overflow-wrap:anywhere;display:block}.workflow-insight-graph__summary{justify-content:space-between;align-items:flex-start;gap:var(--fab-space-3);padding:var(--fab-space-3);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:var(--fab-bg-1);display:flex}.workflow-insight-graph__summary strong{color:var(--fab-text-0);font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-medium);margin-top:2px;display:block}.workflow-insight-graph__summary small{color:var(--fab-text-2);font-size:var(--fab-fs-xs);overflow-wrap:anywhere;margin-top:2px;display:block}.workflow-insight-graph__badges{gap:var(--fab-space-2);flex-wrap:wrap;justify-content:flex-end;display:flex}.workflow-insight-graph__canvas-wrap{gap:var(--fab-space-2);display:grid;overflow-x:auto}.workflow-insight-graph__canvas{border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:var(--fab-bg-0);width:100%;min-width:720px;min-height:360px}.workflow-insight-graph__edges line{stroke:#81aae473;stroke-width:1.2px}.workflow-insight-graph__canvas marker path{fill:#81aae4bf}.workflow-insight-node circle{stroke-width:1.4px;fill:var(--fab-bg-2);stroke:var(--fab-border-light)}.workflow-insight-node text{fill:var(--fab-text-0);font-family:var(--fab-font-sans);font-size:9px;font-weight:var(--fab-fw-medium);text-anchor:middle;pointer-events:none}.workflow-insight-node__kind{fill:var(--fab-text-2);font-size:7px;font-weight:var(--fab-fw-normal)}.workflow-insight-node--workflow circle{fill:#2d72d229;stroke:var(--fab-shield-blue)}.workflow-insight-node--scope circle{fill:#2eb8671f;stroke:var(--fab-success)}.workflow-insight-node--risk circle{fill:#df3a3a1f;stroke:var(--fab-critical)}.workflow-insight-node--evidence circle{fill:#f2ad0d1f;stroke:var(--fab-medium)}.workflow-insight-graph__limit-note{color:var(--fab-text-2);font-size:var(--fab-fs-xs)}.workflow-insight-graph__tables{gap:var(--fab-space-4);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid}.workflow-insight-graph__tables td{vertical-align:top}.workflow-insight-graph__tables small{color:var(--fab-text-2);font-size:var(--fab-fs-xs);overflow-wrap:anywhere;display:block}.repository-tree{gap:var(--fab-space-2);margin:0;padding-left:0;list-style:none;display:grid}.repository-tree .repository-tree{margin-top:var(--fab-space-2);padding-left:var(--fab-space-4);border-left:1px solid var(--fab-border)}.team-run-results-modal{gap:var(--fab-space-4);display:grid}.team-run-results-modal__summary{gap:var(--fab-space-3);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.team-run-results-modal__summary-item{padding:var(--fab-space-3);border:1px solid var(--fab-border);border-radius:var(--fab-radius-sm);background:var(--fab-bg-1);gap:2px;min-width:0;display:grid}.team-run-results-modal__summary-item small{color:var(--fab-text-2);font-size:var(--fab-fs-xs);text-transform:uppercase;letter-spacing:.06em}.team-run-results-modal__summary-item strong{color:var(--fab-text-0);font-size:var(--fab-fs-sm);overflow-wrap:anywhere}.team-run-results-modal__section{gap:var(--fab-space-2);display:grid}.team-run-results-modal__section h3{color:var(--fab-text-0);font-size:var(--fab-fs-md);margin:0}.team-run-results-modal__list{gap:var(--fab-space-2);margin:0;padding:0;list-style:none;display:grid}.team-run-results-modal__list li{padding-bottom:var(--fab-space-2);border-bottom:1px solid var(--fab-border);gap:2px;display:grid}.team-run-results-modal__list li:last-child{border-bottom:0}.team-run-results-modal__list small,.team-run-results-modal__empty{color:var(--fab-text-2);font-size:var(--fab-fs-sm)}.team-run-results-modal__actions{justify-content:flex-end;gap:var(--fab-space-2);flex-wrap:wrap;display:flex}.repository-tree__branch>summary{list-style:none}.repository-tree__branch>summary::-webkit-details-marker{display:none}.repository-tree__entry{gap:2px;display:grid}.repository-tree__entry strong{font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-medium);color:var(--fab-text-0);line-height:var(--fab-lh-normal)}.repository-tree__entry small{font-size:var(--fab-fs-sm);color:var(--fab-text-2);line-height:var(--fab-lh-normal)}.repository-tree__entry--directory{cursor:pointer}.section-card--span-2,.section-card--span2{grid-column:span 2}.section-card--transparent{background:0 0;border-color:#0000;padding:0}.button,.btn,.fab-btn{align-items:center;gap:var(--fab-space-2);padding:var(--fab-space-2) var(--fab-space-4);font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-medium);border-radius:var(--fab-radius-md);transition:all var(--fab-duration) var(--fab-ease);white-space:nowrap;-webkit-user-select:none;user-select:none;border:1px solid var(--fab-border);background:var(--fab-bg-3);color:var(--fab-text-0);cursor:pointer;line-height:1.4;display:inline-flex}.button svg,.btn svg,.fab-btn svg{width:14px;height:14px}.button:hover,.btn:hover,.fab-btn:hover{background:var(--fab-bg-hover);border-color:var(--fab-border-light)}.button:disabled,.btn:disabled,.fab-btn:disabled{opacity:.5;cursor:not-allowed}.button--primary,.btn-primary,.fab-btn-primary{background:var(--fab-shield-blue);color:#fff;border-color:var(--fab-shield-blue)}.button--primary:hover,.btn-primary:hover,.fab-btn-primary:hover{background:var(--fab-shield-light);border-color:var(--fab-shield-light);box-shadow:var(--fab-shadow-glow)}.button--ghost,.btn-ghost,.fab-btn-ghost{color:var(--fab-text-1);background:0 0;border-color:#0000}.button--ghost:hover,.btn-ghost:hover,.fab-btn-ghost:hover{background:var(--fab-bg-hover);color:var(--fab-text-0);border-color:#0000}.button--danger,.btn-danger,.fab-btn-danger{background:var(--fab-critical);color:#fff;border-color:var(--fab-critical)}.button--danger:hover,.btn-danger:hover,.fab-btn-danger:hover{filter:brightness(1.15)}.button--small,.button--sm,.btn-sm,.fab-btn-sm{padding:var(--fab-space-1) var(--fab-space-3);font-size:var(--fab-fs-xs)}.button--lg,.btn-lg,.fab-btn-lg{padding:var(--fab-space-3) var(--fab-space-6);font-size:var(--fab-fs-md)}.button--full{justify-content:center;width:100%}.button-row,.chip-row{gap:var(--fab-space-2);flex-wrap:wrap;display:flex}.icon-button{width:28px;height:28px;color:var(--fab-text-2);border-radius:var(--fab-radius-sm);cursor:pointer;transition:all var(--fab-duration) var(--fab-ease);background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.icon-button:hover{color:var(--fab-text-0);background:var(--fab-bg-hover)}.icon-button:disabled{opacity:.4;cursor:not-allowed}.icon-button[aria-disabled=true]{opacity:.55;cursor:progress}.icon-button svg{width:14px;height:14px}.icon-button--primary{color:var(--fab-shield-light);background:#2d72d21f;border:1px solid #2d72d259}.icon-button--primary:hover{color:var(--fab-text-0);border-color:var(--fab-shield-blue);background:#2d72d233}.icon-button--danger:hover{color:var(--fab-critical);background:var(--fab-critical-bg)}.field{gap:4px;display:grid}.field--full{grid-column:1/-1}.field>span,.field-label,.form-label,.fab-label{margin-bottom:var(--fab-space-1);font-size:11px;font-weight:var(--fab-fw-semi);color:var(--fab-text-2);text-transform:uppercase;letter-spacing:.04em;display:block}.field-label{gap:var(--fab-space-2);min-width:0;margin-bottom:0;display:grid}.field input,.field select,.field textarea,.field-label input,.field-label select,.field-label textarea,.form-input,.fab-input{background:var(--fab-bg-1);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);width:100%;color:var(--fab-text-0);font-size:var(--fab-fs-sm);text-transform:none;letter-spacing:normal;outline:0;padding:8px 12px;font-family:inherit;transition:all .2s;display:block}.field input:focus,.field select:focus,.field textarea:focus,.field-label input:focus,.field-label select:focus,.field-label textarea:focus,.form-input:focus,.fab-input:focus{border-color:var(--fab-shield-blue);box-shadow:0 0 0 3px #2d72d226}.field input::placeholder,.field textarea::placeholder,.field-label input::placeholder,.field-label textarea::placeholder,.fab-input::placeholder{color:var(--fab-text-muted)}.field input:disabled,.field select:disabled,.field textarea:disabled,.field-label input:disabled,.field-label select:disabled,.field-label textarea:disabled{opacity:.62;cursor:not-allowed}.field textarea{resize:vertical;min-height:80px}.field small{color:var(--fab-text-2);font-size:11px;line-height:1.5}.form-grid{gap:var(--fab-space-3) var(--fab-space-4);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.form-shell{gap:var(--fab-space-4);flex-direction:column;display:flex}.workflow-schedule-row{gap:var(--fab-space-3) var(--fab-space-4);grid-template-columns:minmax(180px,.7fr) minmax(160px,.5fr) minmax(220px,1fr);align-items:end;display:grid}.workflow-schedule-row__enabled{align-self:end;min-height:42px;padding:0}.workflow-manual-grid{gap:var(--fab-space-3) var(--fab-space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.workflow-manual-actions{margin-top:var(--fab-space-3)}.workflow-history-filters{gap:var(--fab-space-3);margin-bottom:var(--fab-space-4);grid-template-columns:minmax(160px,.9fr) minmax(130px,.7fr) minmax(130px,.7fr) minmax(180px,1fr) minmax(140px,.8fr);align-items:end;display:grid}.project-policy-baseline{gap:var(--fab-space-4);display:grid}.project-policy-filters{gap:var(--fab-space-3);grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(140px,.8fr));align-items:end;display:grid}.project-policy-scope-count{min-width:20px;height:20px;margin-left:var(--fab-space-2);padding:0 var(--fab-space-1);border-radius:var(--fab-radius-full);background:var(--fab-bg-2);color:var(--fab-text-1);font-size:var(--fab-fs-xs);place-items:center;line-height:1;display:inline-grid}.workflow-output-tab--active .project-policy-scope-count{color:var(--fab-text-0);background:#2d72d233}.project-policy-filter-summary{color:var(--fab-text-2);font-size:var(--fab-fs-sm)}.project-policy-groups{border-top:1px solid var(--fab-border)}.project-policy-group{border-bottom:1px solid var(--fab-border)}.project-policy-group summary{gap:var(--fab-space-3);padding:var(--fab-space-3) 0;cursor:pointer;grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.project-policy-group__title{gap:3px;min-width:0;display:grid}.project-policy-group__title strong{color:var(--fab-text-0);overflow-wrap:anywhere}.project-policy-group__title small{color:var(--fab-text-2);font-size:var(--fab-fs-xs);overflow-wrap:anywhere}.project-policy-group__meta{gap:var(--fab-space-2);color:var(--fab-text-2);font-size:var(--fab-fs-xs);flex-wrap:wrap;justify-content:flex-end;align-items:center;display:flex}.project-policy-group__body{gap:var(--fab-space-3);padding:0 0 var(--fab-space-4);display:grid}.project-policy-group__body>p{color:var(--fab-text-1);font-size:var(--fab-fs-sm);margin:0;line-height:1.5}.mirror-policy-link{gap:var(--fab-space-1);width:fit-content;margin-top:var(--fab-space-2);color:var(--fab-primary);font-size:var(--fab-fs-xs);font-weight:var(--fab-fw-semi);align-items:center;text-decoration:none;display:inline-flex}.mirror-policy-link:hover,.mirror-policy-link:focus-visible{text-decoration:underline}.workflow-run-prereq-strip{gap:var(--fab-space-2) var(--fab-space-4);padding:var(--fab-space-2) var(--fab-space-3);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:var(--fab-bg-1);font-size:var(--fab-fs-sm);color:var(--fab-text-1);flex-wrap:wrap;align-items:center;display:flex}.workflow-run-prereq-strip strong{color:var(--fab-text-0)}.checkbox-row{align-items:center;gap:var(--fab-space-2);cursor:pointer;text-align:left;min-height:0;margin:0;padding:4px 0;line-height:1.4;display:flex}.checkbox-row>input[type=checkbox]{flex:0 0 16px;align-self:center;width:16px;height:16px;margin:0}.checkbox-row>span{min-width:0;font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-reg);color:var(--fab-text-1);text-transform:none;letter-spacing:0;flex:auto;line-height:1.4;display:block}.checkbox-row>span>strong{font-weight:var(--fab-fw-semi);color:var(--fab-text-0)}.checkbox-row>span>strong+small{margin-left:var(--fab-space-2)}.checkbox-row>span>small{color:var(--fab-text-2);text-transform:none;letter-spacing:0;font-size:12px;line-height:1.4}.checkbox-grid{gap:var(--fab-space-1);grid-template-columns:1fr;width:100%;display:grid}.checkbox-grid--compact-list{border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:var(--fab-bg-1);gap:0;overflow:hidden}.checkbox-grid--compact-list .checkbox-row{padding:6px var(--fab-space-3);border-bottom:1px solid var(--fab-border);min-height:0;margin:0}.checkbox-grid--compact-list .checkbox-row:last-child{border-bottom:none}.checkbox-grid--compact-list .checkbox-row:hover{background:var(--fab-bg-hover)}.trusted-backend-urls{gap:var(--fab-space-2);flex-direction:column;display:flex}.trusted-backend-urls__row{align-items:stretch;gap:var(--fab-space-2);display:flex}.trusted-backend-urls__row>input{flex:auto;min-width:0}.trusted-backend-urls__list{margin:2px 0 0;padding:0;list-style:none}.trusted-backend-urls__list>li{margin:0;padding:0}.data-table,.fab-table{border-collapse:collapse;width:100%;font-size:var(--fab-fs-sm)}.data-table th,.fab-table th{padding:var(--fab-space-3) var(--fab-space-4);text-align:left;font-size:11px;font-weight:var(--fab-fw-semi);color:var(--fab-text-2);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--fab-border);background:var(--fab-bg-1);z-index:5;position:sticky;top:0}.data-table td,.fab-table td{padding:var(--fab-space-3) var(--fab-space-4);font-size:var(--fab-fs-sm);color:var(--fab-text-1);border-bottom:1px solid var(--fab-border);vertical-align:top}.data-table td>strong,.fab-table td>strong{color:var(--fab-text-0);line-height:var(--fab-lh-normal);overflow-wrap:anywhere;display:block}.data-table td>small,.fab-table td>small,.data-table td>span+small,.fab-table td>span+small{margin-top:var(--fab-space-1);color:var(--fab-text-2);font-size:var(--fab-fs-xs);overflow-wrap:anywhere;line-height:1.4;display:block}.data-table td>small:first-child,.fab-table td>small:first-child{margin-top:0}.data-table .inline-link{color:var(--fab-accent);font-size:var(--fab-fs-xs);margin-top:var(--fab-space-1);font-weight:700;text-decoration:none;display:inline-flex}.data-table .inline-link:hover{text-decoration:underline}.data-table td>code,.fab-table td>code{margin-top:var(--fab-space-1);color:var(--fab-text-2);font-family:var(--fab-font-mono);font-size:var(--fab-fs-xs);overflow-wrap:anywhere;white-space:normal;display:block}.data-table tr:hover td,.fab-table tr:hover td{background:var(--fab-bg-hover)}.data-table tr.data-table__row--active td{background:#2d72d21f}.data-table .mono{font-family:var(--fab-font-mono);font-size:12px}.data-table--compact td,.data-table--compact th{padding:var(--fab-space-2) var(--fab-space-3)}.data-table__actions{justify-content:flex-end;align-items:center;gap:2px;display:inline-flex}.table-cell--actions{text-align:right;white-space:nowrap;width:1%}.table-row-select{gap:var(--fab-space-1);min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:none;display:grid}.table-row-select strong{color:var(--fab-text-0);overflow-wrap:anywhere}.table-row-select span,.table-row-select div{overflow-wrap:anywhere}.table-row-select small{color:var(--fab-text-2);font-size:var(--fab-fs-xs);overflow-wrap:anywhere}.table-row-select:hover strong,.table-row-select:focus-visible strong{color:var(--fab-shield-light)}.table-row-select:focus-visible{outline:2px solid var(--fab-shield-blue);outline-offset:3px;border-radius:var(--fab-radius-sm)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.team-run-lineage-link{width:fit-content;max-width:100%;margin-top:var(--fab-space-1);color:var(--fab-shield-light);font-size:var(--fab-fs-xs);font-weight:var(--fab-fw-semi);overflow-wrap:anywhere;line-height:1.4;text-decoration:none;display:block}.team-run-lineage-link:hover,.team-run-lineage-link:focus-visible{color:var(--fab-shield-blue);text-decoration:underline}.team-run-lineage-link:focus-visible{outline:2px solid var(--fab-shield-blue);outline-offset:2px;border-radius:var(--fab-radius-sm)}.team-run-lineage-link--static{color:var(--fab-text-2);font-weight:400}body[data-density=compact] .data-table td,body[data-density=compact] .data-table th{padding:var(--fab-space-2) var(--fab-space-3)}body[data-density=compact] .section-card,body[data-density=compact] .plain-card,body[data-density=compact] .card{padding:var(--fab-space-4);margin-bottom:var(--fab-space-4)}body[data-density=compact] .stats-grid,body[data-density=compact] .metric-grid,body[data-density=compact] .workspace-summary,body[data-density=compact] .metric-strip{gap:var(--fab-space-3);margin-bottom:var(--fab-space-4)}body[data-density=compact] .stat-card,body[data-density=compact] .metric-card,body[data-density=compact] .workspace-summary__card,body[data-density=compact] .metric-strip__item{padding:var(--fab-space-3) var(--fab-space-4)}body[data-density=compact] .app-shell__content{padding:var(--fab-space-5)}.data-table__identity strong{color:var(--fab-text-0);line-height:var(--fab-lh-normal);overflow-wrap:anywhere;display:block}.data-table__identity small{margin-top:var(--fab-space-1);color:var(--fab-text-2);overflow-wrap:anywhere;font-size:11px;line-height:1.4;display:block}.policy-statement-preview{max-width:96ch;color:var(--fab-text-1);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:6px 0 0;font-size:12px;line-height:1.4;display:-webkit-box;overflow:hidden}.policy-detail-stack{gap:var(--fab-space-4);display:grid}.policy-detail-block{gap:var(--fab-space-2);display:grid}.policy-detail-block h3{color:var(--fab-text-0);font-size:var(--fab-fs-lg);margin:0}.policy-reader{gap:var(--fab-space-4);display:grid}.policy-reader small{color:var(--fab-text-2);font-size:var(--fab-fs-xs);font-weight:var(--fab-fw-bold);margin-bottom:var(--fab-space-1);text-transform:uppercase;display:block}.policy-reader p{color:var(--fab-text-1);font-size:var(--fab-fs-sm);overflow-wrap:anywhere;white-space:pre-wrap;margin:0;line-height:1.6}.policy-category-checkbox-grid{gap:var(--fab-space-2);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.policy-category-checkbox{border:1px solid var(--fab-border);border-radius:var(--fab-radius-sm);color:var(--fab-text-1);align-items:center;gap:var(--fab-space-2);min-height:34px;padding:var(--fab-space-1) var(--fab-space-2);display:inline-flex}.policy-category-checkbox input{accent-color:var(--fab-shield-blue)}.policy-kanban-board{gap:var(--fab-space-3);padding-bottom:var(--fab-space-2);grid-template-columns:repeat(6,minmax(240px,1fr));display:grid;overflow-x:auto}.policy-kanban-column{background:var(--fab-bg-card);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);grid-template-rows:auto 1fr;min-width:240px;min-height:560px;display:grid}.policy-kanban-column__header{border-bottom:1px solid var(--fab-border);min-height:44px;padding:var(--fab-space-3);justify-content:space-between;align-items:center;display:flex}.policy-kanban-column__header strong{color:var(--fab-text-1);font-size:var(--fab-fs-sm)}.policy-kanban-column__items{align-content:start;gap:var(--fab-space-2);padding:var(--fab-space-2);display:grid}.policy-kanban-card{background:var(--fab-bg-1);border:1px solid var(--fab-border);border-radius:var(--fab-radius-sm);cursor:grab;gap:var(--fab-space-2);padding:var(--fab-space-3);display:grid}.policy-kanban-card:active{cursor:grabbing}.policy-kanban-card__header{align-items:start;gap:var(--fab-space-2);grid-template-columns:minmax(0,1fr) auto;display:grid}.policy-kanban-card__header strong{color:var(--fab-text-0);font-size:var(--fab-fs-sm);overflow-wrap:anywhere;line-height:1.35}.policy-kanban-card>small{color:var(--fab-text-2);font-family:var(--fab-font-mono);overflow-wrap:anywhere;font-size:11px}.policy-kanban-card__move{margin-top:var(--fab-space-1)}.policy-kanban-card__open{margin-top:var(--fab-space-1);justify-content:center;width:100%}.policy-lifecycle-actions{background:var(--fab-bg-1);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);align-items:flex-start;gap:var(--fab-space-4);padding:var(--fab-space-4);grid-template-columns:minmax(180px,.8fr) minmax(280px,1.2fr);display:grid}.policy-lifecycle-actions>div:first-child{gap:var(--fab-space-1);display:grid}.policy-lifecycle-actions>div:first-child>p{color:var(--fab-text-2);font-size:var(--fab-fs-sm);margin:0}.policy-lifecycle-actions__buttons{gap:var(--fab-space-2);flex-wrap:wrap;justify-content:flex-end;display:flex}.policy-document{gap:var(--fab-space-4);display:grid}.policy-document__identity{align-items:center;gap:var(--fab-space-2);flex-wrap:wrap;display:flex}.policy-document__source-note{background:var(--fab-bg-1);border:1px solid var(--fab-border);border-radius:var(--fab-radius-sm);color:var(--fab-text-2);font-size:var(--fab-fs-sm);padding:var(--fab-space-3);margin:0}.markdown-renderer{color:var(--fab-text-1);font-size:var(--fab-fs-md);max-width:920px;line-height:1.7}.markdown-renderer>:first-child{margin-top:0}.markdown-renderer>:last-child{margin-bottom:0}.markdown-renderer h1,.markdown-renderer h2,.markdown-renderer h3,.markdown-renderer h4{color:var(--fab-text-0);margin:1.5em 0 .55em;line-height:1.3}.markdown-renderer h1{border-bottom:1px solid var(--fab-border);padding-bottom:var(--fab-space-3);font-size:1.7rem}.markdown-renderer h2{font-size:1.3rem}.markdown-renderer h3{font-size:1.05rem}.markdown-renderer p,.markdown-renderer ul,.markdown-renderer ol,.markdown-renderer blockquote,.markdown-renderer pre,.markdown-renderer table{margin:0 0 1em}.markdown-renderer ul,.markdown-renderer ol{padding-left:1.5rem}.markdown-renderer li+li{margin-top:var(--fab-space-1)}.markdown-renderer blockquote{border-left:3px solid var(--fab-shield-blue);color:var(--fab-text-2);padding-left:var(--fab-space-4)}.markdown-renderer code{background:var(--fab-bg-2);border-radius:var(--fab-radius-sm);padding:.12em .35em}.markdown-renderer pre{background:var(--fab-bg-0);border:1px solid var(--fab-border);border-radius:var(--fab-radius-sm);padding:var(--fab-space-3);overflow-x:auto}.markdown-renderer pre code{background:0 0;padding:0}.markdown-renderer table{border-collapse:collapse;width:100%}.markdown-renderer th,.markdown-renderer td{border:1px solid var(--fab-border);padding:var(--fab-space-2) var(--fab-space-3);text-align:left;vertical-align:top}.markdown-renderer th{background:var(--fab-bg-1);color:var(--fab-text-0)}.policy-kanban-empty{color:var(--fab-text-2);font-size:var(--fab-fs-sm);margin:var(--fab-space-2)}@media (width<=720px){.policy-lifecycle-actions{grid-template-columns:1fr}.policy-lifecycle-actions__buttons{justify-content:flex-start}}.badge,.status-pill,.fab-badge{border-radius:var(--fab-radius-full);font-size:11px;font-weight:var(--fab-fw-semi);letter-spacing:.02em;align-items:center;padding:2px 8px;display:inline-flex}.status-pill--tiny,.fab-badge-sm{padding:1px 6px;font-size:10px}.tone-teal,.badge-ready,.fab-badge-success,.health-healthy{color:#61d190;background:#34b26826}.tone-warning,.health-watch{color:#e8ba30;background:#e6b31a26}.tone-primary,.badge-medium,.fab-badge-medium{color:var(--fab-shield-light);background:#2d72d226}.tone-error,.badge-critical,.badge-failed,.fab-badge-critical,.health-critical{color:#e96363;background:#d22d2d26}.tone-muted,.badge-low,.fab-badge-low{color:var(--fab-text-2);background:#50566233}.badge-high,.fab-badge-high{color:#eb8b47;background:#e66f1a26}.badge-pending,.fab-badge-info{color:#e8ba30;background:#e6b31a26}.tier-freemium{color:var(--fab-text-2);background:#50566233}.tier-standard{color:var(--fab-shield-light);background:#2d72d226}.tier-premium{color:#61d190;background:#34b26826}.tier-creator{color:var(--fab-gold);background:#e6b03326}.sync-queued{color:#e8ba30;background:#e6b31a26}.sync-running{color:var(--fab-shield-light);background:#2d72d226}.sync-completed{color:#61d190;background:#34b26826}.sync-failed{color:#e96363;background:#d22d2d26}.alert{padding:var(--fab-space-3) var(--fab-space-4);border-radius:var(--fab-radius-md);background:var(--fab-bg-2);border-left:3px solid var(--fab-shield-blue);margin-bottom:var(--fab-space-3)}.alert--error{border-left-color:var(--fab-critical)}.alert--warning{border-left-color:var(--fab-gold)}.alert strong{font-size:var(--fab-fs-sm);margin-bottom:2px;display:block}.alert p{font-size:var(--fab-fs-sm);color:var(--fab-text-1);margin:0}.inline-message{padding:var(--fab-space-2) var(--fab-space-3);border-radius:var(--fab-radius-md);background:var(--fab-bg-1);border:1px solid var(--fab-border);font-size:var(--fab-fs-sm);color:var(--fab-text-1)}.table-cell--number{text-align:right}.mirror-dimension-select{min-width:220px}.mirror-chart{overflow:hidden}.mirror-bars{gap:var(--fab-space-3);display:grid}.mirror-bar-row{align-items:center;gap:var(--fab-space-3);grid-template-columns:minmax(150px,220px) minmax(160px,1fr) 48px;display:grid}.mirror-bar-row__label{color:var(--fab-text-1);font-size:var(--fab-fs-sm);overflow-wrap:anywhere}.mirror-bar-row__track{border-radius:var(--fab-radius-full);background:var(--fab-bg-1);border:1px solid var(--fab-border);height:10px;overflow:hidden}.mirror-bar-row__fill{border-radius:inherit;background:linear-gradient(90deg, #34b268, var(--fab-shield-blue));height:100%;display:block}.mirror-bar-row strong{color:var(--fab-text-0);font-size:var(--fab-fs-sm);text-align:right}.mirror-audit-progress{gap:var(--fab-space-2);width:min(100%,720px);margin-bottom:var(--fab-space-4);padding:var(--fab-space-3);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:var(--fab-bg-1);display:grid}.mirror-audit-progress--active{border-color:var(--fab-shield-blue)}.mirror-audit-progress--failed{border-color:var(--fab-critical)}.mirror-audit-progress--warning{border-color:var(--fab-gold)}.mirror-audit-progress__header{justify-content:space-between;align-items:center;gap:var(--fab-space-3);color:var(--fab-text-0);font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-semi);display:flex}.mirror-audit-progress__header span{overflow-wrap:anywhere}.mirror-audit-progress__track{border:1px solid var(--fab-border);border-radius:var(--fab-radius-full);background:var(--fab-bg-0);height:8px;overflow:hidden}.mirror-audit-progress__track span{border-radius:inherit;background:linear-gradient(90deg, var(--fab-shield-blue), #34b268);height:100%;transition:width .16s;display:block}.mirror-audit-progress__pipeline{padding-bottom:0}.mirror-audit-live-progress{gap:var(--fab-space-2);margin-top:var(--fab-space-1);display:grid}.mirror-audit-live-progress--empty{padding:var(--fab-space-2) var(--fab-space-3);border:1px dashed var(--fab-border-light);border-radius:var(--fab-radius-sm)}.mirror-audit-live-progress__row{gap:var(--fab-space-3);padding:var(--fab-space-2) var(--fab-space-3);border:1px solid var(--fab-border-light);border-radius:var(--fab-radius-sm);background:var(--fab-bg-0);grid-template-columns:minmax(180px,1fr) auto minmax(120px,.5fr) minmax(180px,1fr);align-items:center;display:grid}.mirror-audit-live-progress__row>div{gap:2px;min-width:0;display:grid}.mirror-audit-live-progress__row strong{color:var(--fab-text-0);font-size:var(--fab-fs-xs);line-height:var(--fab-lh-normal);overflow-wrap:anywhere}.mirror-audit-live-progress__row small{color:var(--fab-text-2);font-size:var(--fab-fs-xs);line-height:var(--fab-lh-normal);overflow-wrap:anywhere}.mirror-audit-live-progress__metric{text-align:right}.mirror-audit-progress__pipeline .workflow-stage-pipeline__segment{flex-basis:136px;min-width:136px}.mirror-audit-progress__pipeline .workflow-stage-pipeline__step{min-width:92px}.mirror-audit-progress__pipeline .workflow-stage-pipeline__copy strong,.mirror-audit-progress__pipeline .workflow-stage-pipeline__copy small{font-size:var(--fab-fs-xs)}.mirror-audit-progress__actions{justify-content:flex-start;align-items:center;gap:var(--fab-space-2);display:flex}.mirror-audit-progress small{color:var(--fab-text-2);font-size:var(--fab-fs-xs);overflow-wrap:anywhere}.mirror-audit-progress__error,.mirror-audit-progress__warning{padding:var(--fab-space-2) var(--fab-space-3);border-radius:var(--fab-radius-sm);gap:2px;display:grid}.mirror-audit-progress__error{border:1px solid color-mix(in srgb, var(--fab-critical) 45%, var(--fab-border));background:color-mix(in srgb, var(--fab-critical) 12%, var(--fab-bg-0))}.mirror-audit-progress__warning{border:1px solid color-mix(in srgb, var(--fab-gold) 45%, var(--fab-border));background:color-mix(in srgb, var(--fab-gold) 12%, var(--fab-bg-0))}.mirror-audit-progress__error strong,.mirror-audit-progress__warning strong{color:var(--fab-text-0);font-size:var(--fab-fs-xs)}.mirror-audit-progress__error span,.mirror-audit-progress__warning span{color:var(--fab-text-1);font-size:var(--fab-fs-xs);overflow-wrap:anywhere}.mirror-dimension-grid{gap:var(--fab-space-3);grid-template-columns:repeat(auto-fit,minmax(230px,1fr));display:grid}.mirror-dimension-card{gap:var(--fab-space-3);min-height:92px;padding:var(--fab-space-4);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:var(--fab-bg-1);color:inherit;grid-template-columns:32px 1fr auto;align-items:center;text-decoration:none;display:grid}.mirror-dimension-card>span{min-width:0}.mirror-dimension-card:hover,.mirror-dimension-card:focus-visible{border-color:var(--fab-border-light);background:var(--fab-bg-hover);outline:none}.mirror-dimension-card__icon{border-radius:var(--fab-radius-sm);width:28px;height:28px;color:var(--fab-shield-light);background:#2d72d226;justify-content:center;align-items:center;display:inline-flex}.mirror-dimension-card strong,.mirror-dimension-card small{display:block}.mirror-dimension-card strong{color:var(--fab-text-0);font-size:var(--fab-fs-sm)}.mirror-dimension-card small{color:var(--fab-text-2);font-size:var(--fab-fs-xs)}.mirror-dimension-card__score{color:var(--fab-text-0);font-size:var(--fab-fs-md);font-weight:var(--fab-fw-semi);justify-items:end;display:grid}.mirror-dimension-card__audit{grid-column:2/-1;gap:5px;min-width:0;display:grid}.mirror-dimension-card__audit-header{justify-content:space-between;align-items:center;gap:var(--fab-space-2);display:flex}.mirror-dimension-card__audit-header strong{color:var(--fab-text-1);font-size:var(--fab-fs-xs)}.mirror-dimension-card__audit--active .mirror-dimension-card__audit-header strong,.mirror-dimension-card__audit--active .mirror-dimension-card__audit-header small{color:var(--fab-shield-light)}.mirror-dimension-card__audit-track{border:1px solid var(--fab-border);border-radius:var(--fab-radius-full);background:var(--fab-bg-0);height:5px;display:block;overflow:hidden}.mirror-dimension-card__audit-track span{border-radius:inherit;background:linear-gradient(90deg, var(--fab-shield-blue), #34b268);height:100%;transition:width .16s;display:block}.mirror-detail-topbar{justify-content:space-between;align-items:flex-end;gap:var(--fab-space-3);display:flex}.mirror-detail-heading{justify-content:space-between;align-items:center;gap:var(--fab-space-4);display:flex}.mirror-detail-heading h2{margin-bottom:0}.mirror-detail-heading__metrics{color:var(--fab-text-0);justify-items:end;display:grid}.mirror-detail-heading__metrics span{font-size:28px;font-weight:var(--fab-fw-bold);line-height:1}.mirror-detail-heading__metrics small{color:var(--fab-text-2);font-size:var(--fab-fs-xs)}.mirror-workspace-nav{gap:var(--fab-space-2);padding:var(--fab-space-2);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:var(--fab-bg-card);flex-wrap:wrap;display:flex}.mirror-workspace-tab{min-height:32px;padding:0 var(--fab-space-3);border-radius:var(--fab-radius-sm);color:var(--fab-text-2);font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-semi);align-items:center;text-decoration:none;display:inline-flex}.mirror-workspace-tab:hover,.mirror-workspace-tab:focus-visible,.mirror-workspace-tab--active{color:var(--fab-text-0);background:var(--fab-bg-hover);outline:none}.mirror-matrix-wrap{overflow-x:auto}.mirror-matrix{table-layout:fixed;min-width:960px}.mirror-matrix th{width:25%}.mirror-level--insufficient{color:#eb7070}.mirror-level--almost-good{color:#eabf3e}.mirror-level--good{color:#69d395}.mirror-level--very-good{color:var(--fab-shield-light)}.mirror-matrix-column{align-content:start;gap:var(--fab-space-3);min-height:120px;display:grid}.mirror-matrix-item{gap:var(--fab-space-2);padding:var(--fab-space-3);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:var(--fab-bg-1);display:grid}.mirror-matrix-item__header{gap:var(--fab-space-2);display:grid}.mirror-matrix-item__title{color:var(--fab-text-0);font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-semi);line-height:var(--fab-lh-normal);overflow-wrap:anywhere}.mirror-matrix-item small{color:var(--fab-text-2);font-size:var(--fab-fs-xs);overflow-wrap:anywhere}.mirror-matrix-item small.mirror-matrix-item__workflow{color:var(--fab-shield-light);font-weight:var(--fab-fw-semi)}.mirror-matrix-item__comment{color:var(--fab-text-1);font-size:var(--fab-fs-xs);line-height:var(--fab-lh-normal);overflow-wrap:anywhere;gap:2px;display:grid}.mirror-matrix-item__comment strong{color:var(--fab-text-0);font-weight:var(--fab-fw-semi)}.mirror-matrix-item__comment small{color:var(--fab-text-2)}.mirror-matrix-item__meta{gap:var(--fab-space-1);flex-wrap:wrap;align-items:center;display:flex}.mirror-matrix-item__actions,.mirror-matrix-item__plan-actions{align-items:center;gap:var(--fab-space-1);flex-wrap:nowrap;display:flex}.mirror-matrix-item__plan-link,.mirror-matrix-item__question-button,.mirror-matrix-item__evidence,.mirror-matrix-item__focused-review,.mirror-matrix-item__policy,.mirror-matrix-item__plan{width:28px;height:28px}.mirror-matrix-item__question-button{position:relative}.mirror-matrix-item__question-button span{border-radius:var(--fab-radius-full);background:var(--fab-medium);min-width:16px;height:16px;color:var(--fab-bg-0);font-size:10px;font-weight:var(--fab-fw-bold);place-items:center;padding:0 4px;line-height:1;display:grid;position:absolute;top:-6px;right:-6px}.mirror-matrix-item__evidence{justify-self:start}.mirror-evidence-confidence,.mirror-matrix-item__review,.mirror-matrix-item__plan-state{border-radius:var(--fab-radius-full);border:1px solid var(--fab-border);min-height:20px;font-size:10px;font-weight:var(--fab-fw-semi);align-items:center;padding:2px 7px;line-height:1.2;display:inline-flex}.mirror-evidence-confidence--high{color:#93ecb8;background:var(--fab-success-bg);border-color:color-mix(in srgb, var(--fab-success) 42%, transparent)}.mirror-evidence-confidence--medium{color:#f9db94;background:var(--fab-medium-bg);border-color:color-mix(in srgb, var(--fab-medium) 42%, transparent)}.mirror-evidence-confidence--low,.mirror-evidence-confidence--unknown{color:#ef9f9f;background:var(--fab-critical-bg);border-color:color-mix(in srgb, var(--fab-critical) 42%, transparent)}.mirror-evidence-confidence--manual{color:var(--fab-shield-light);background:var(--fab-info-bg);border-color:color-mix(in srgb, var(--fab-info) 42%, transparent)}.mirror-evidence-status{border:1px solid color-mix(in srgb, currentColor 34%, transparent);border-radius:var(--fab-radius-full);min-height:20px;font-size:10px;font-weight:var(--fab-fw-semi);align-items:center;padding:2px 7px;line-height:1.2;display:inline-flex}.mirror-evidence-status--small{min-height:18px;padding:1px 6px;font-size:9px}.mirror-matrix-item__review{color:#f9db94;background:var(--fab-medium-bg);border-color:color-mix(in srgb, var(--fab-medium) 42%, transparent)}.mirror-matrix-item__plan-state.tone-primary{color:var(--fab-shield-light);background:#2d72d224;border-color:#2d72d26b}.mirror-matrix-item__plan-state.health-watch{color:#f9db94;background:var(--fab-medium-bg);border-color:color-mix(in srgb, var(--fab-medium) 42%, transparent)}.mirror-status-select{border-radius:var(--fab-radius-full);width:100%;min-height:28px;color:inherit;font:inherit;font-size:11px;font-weight:var(--fab-fw-semi);border:1px solid #0000;padding:2px 8px}.mirror-status-select option{color:#111722;background:#fafafa}.mirror-status-draft{gap:var(--fab-space-2);display:grid}.mirror-status-draft input,.mirror-status-draft textarea{border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:var(--fab-bg-0);width:100%;color:var(--fab-text-0);font-size:var(--fab-fs-sm);padding:8px 10px}.mirror-status-draft textarea{resize:vertical;min-height:72px}.mirror-status-draft--table{margin-top:var(--fab-space-2);min-width:min(520px,72vw)}.mirror-status-evidence-modal__header{gap:var(--fab-space-3);justify-content:space-between;align-items:flex-start;display:flex}.mirror-status-evidence-modal__refresh{flex:none;width:34px;height:34px}.mirror-workflow-context{margin-top:var(--fab-space-4);padding-top:var(--fab-space-4);border-top:1px solid var(--fab-border)}.mirror-workflow-summary{gap:var(--fab-space-3);margin-bottom:var(--fab-space-4);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.mirror-workflow-summary span{min-width:0;padding:var(--fab-space-3);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:var(--fab-bg-0);gap:2px;display:grid}.mirror-workflow-summary strong{color:var(--fab-text-0);font-size:var(--fab-fs-sm);overflow-wrap:anywhere}.mirror-workflow-summary small{color:var(--fab-text-2);font-size:var(--fab-fs-xs)}.mirror-workflow-subnav{gap:var(--fab-space-1);margin-bottom:var(--fab-space-4);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:var(--fab-bg-1);flex-wrap:wrap;padding:3px;display:flex}.mirror-workflow-subnav__item{border-radius:var(--fab-radius-sm);color:var(--fab-text-2);font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-semi);padding:8px 12px;text-decoration:none}.mirror-workflow-subnav__item--active{background:var(--fab-bg-2);color:var(--fab-text-0)}.mirror-workflow-page{gap:var(--fab-space-3);display:grid}.mirror-analytics-dashboard{gap:var(--fab-space-4);display:grid}.mirror-analytics-metrics{gap:var(--fab-space-3);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.mirror-analytics-metric{min-width:0;padding:var(--fab-space-3);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:var(--fab-bg-0);gap:3px;display:grid}.mirror-analytics-metric span,.mirror-analytics-table h3{color:var(--fab-text-2);font-size:var(--fab-fs-xs);letter-spacing:.04em;text-transform:uppercase;font-weight:700}.mirror-analytics-metric strong{color:var(--fab-text-0);font-size:var(--fab-fs-xl);line-height:1.1}.mirror-analytics-metric small,.mirror-analytics-sync small{color:var(--fab-text-2);font-size:var(--fab-fs-xs)}.mirror-analytics-sync{justify-content:space-between;align-items:center;gap:var(--fab-space-3);padding:var(--fab-space-3);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:color-mix(in srgb, var(--fab-bg-0) 82%, var(--fab-primary-500) 18%);display:flex}.mirror-analytics-sync>span{gap:2px;min-width:0;display:grid}.mirror-analytics-sync strong{color:var(--fab-text-0);font-size:var(--fab-fs-sm)}.mirror-analytics-grid{gap:var(--fab-space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.mirror-analytics-table{gap:var(--fab-space-2);min-width:0;display:grid}@media (width<=1100px){.mirror-analytics-metrics,.mirror-analytics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.mirror-analytics-metrics,.mirror-analytics-grid{grid-template-columns:1fr}}.mirror-workflow-run-list{gap:var(--fab-space-2);display:grid}.mirror-workflow-run-list__header,.mirror-workflow-run-row{gap:var(--fab-space-3);grid-template-columns:minmax(220px,1fr) auto minmax(120px,auto) minmax(120px,auto) minmax(150px,auto) minmax(260px,auto);align-items:center;display:grid}.mirror-workflow-cost-preview{justify-content:space-between;align-items:center;gap:var(--fab-space-3);padding:var(--fab-space-3);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:var(--fab-bg-0);display:flex}.mirror-workflow-cost-preview>span:first-child{gap:2px;display:grid}.mirror-workflow-cost-preview strong{color:var(--fab-text-0);font-size:var(--fab-fs-sm)}.mirror-workflow-cost-preview small,.mirror-workflow-run-list__header{color:var(--fab-text-2);font-size:var(--fab-fs-xs)}.mirror-workflow-run-list__header strong{color:var(--fab-text-0);font-size:var(--fab-fs-sm)}.mirror-workflow-run-row{padding:var(--fab-space-3);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:var(--fab-bg-0)}.mirror-workflow-run-row>span:first-child,.mirror-workflow-run-cost{gap:2px;min-width:0;display:grid}.mirror-workflow-run-row strong{color:var(--fab-text-0);font-size:var(--fab-fs-sm)}.mirror-workflow-run-row small{color:var(--fab-text-2);font-size:var(--fab-fs-xs);overflow-wrap:anywhere}.mirror-workflow-run-row__pipeline{grid-column:1/-1}.mirror-workflow-settings .form-help{color:var(--fab-text-2);font-size:var(--fab-fs-xs);margin:0}.mirror-workflow-settings .form-help--error{color:var(--fab-critical)}.field-label--checkbox{align-self:end;align-items:center;gap:var(--fab-space-2);flex-direction:row;min-height:38px;display:flex}.field-label--checkbox input{width:16px;height:16px}.mirror-workflow-context__intro{gap:var(--fab-space-1);margin-bottom:var(--fab-space-3);display:grid}.mirror-workflow-context__intro small,.mirror-workflow-context__empty,.mirror-workflow-context__tool small{color:var(--fab-text-2)}.mirror-workflow-context__tools{gap:var(--fab-space-2);display:grid}.mirror-workflow-context__tool{justify-content:space-between;align-items:center;gap:var(--fab-space-3);padding:var(--fab-space-3);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:var(--fab-bg-0);display:flex}.mirror-workflow-context__tool span:first-child{gap:2px;display:grid}.mirror-perspective-panel{overflow-x:auto}.mirror-perspective-table{table-layout:fixed;min-width:1080px}.mirror-perspective-table th:first-child,.mirror-perspective-table td:first-child{width:26%}.mirror-perspective-table td{vertical-align:top}.mirror-perspective-table strong,.mirror-perspective-table small,.mirror-perspective-table span{overflow-wrap:anywhere}.mirror-perspective-table small{color:var(--fab-text-2);font-size:var(--fab-fs-xs);display:block}.mirror-survey-inline{gap:var(--fab-space-2);min-width:220px;display:grid}.mirror-survey-inline select,.mirror-survey-inline input,.mirror-survey-inline textarea{border:1px solid var(--fab-border);border-radius:var(--fab-radius-sm);background:var(--fab-bg-0);width:100%;color:var(--fab-text-0);font:inherit;font-size:var(--fab-fs-xs)}.mirror-survey-inline select,.mirror-survey-inline input{min-height:30px;padding:5px 8px}.mirror-survey-inline textarea{resize:vertical;min-height:64px;padding:8px}@media (width<=760px){.mirror-bar-row{grid-template-columns:1fr 56px}.mirror-bar-row__label{grid-column:1/-1}.mirror-detail-topbar,.mirror-detail-heading{flex-direction:column;align-items:stretch}.mirror-detail-heading__metrics{justify-items:start}}.inline-message--audit{border-color:var(--fab-medium);background:var(--fab-medium-bg);color:var(--fab-text-0)}.banner{align-items:center;gap:var(--fab-space-3);padding:var(--fab-space-3) var(--fab-space-4);background:var(--fab-bg-2);border:1px solid var(--fab-border);border-left:3px solid var(--fab-shield-blue);border-radius:var(--fab-radius-md);margin-bottom:var(--fab-space-4);font-size:var(--fab-fs-sm);display:flex}.banner--info{border-left-color:var(--fab-info)}.banner--warning{border-left-color:var(--fab-medium)}.banner--error{border-left-color:var(--fab-critical)}.banner__icon{color:var(--fab-text-2);flex-shrink:0}.banner__icon svg{width:18px;height:18px}.banner__body{color:var(--fab-text-1);line-height:var(--fab-lh-normal);flex:1}.banner__action{border:1px solid var(--fab-border);color:var(--fab-text-0);border-radius:var(--fab-radius-sm);font-size:var(--fab-fs-xs);font-weight:var(--fab-fw-semi);background:0 0;padding:4px 10px}.banner__action:hover{background:var(--fab-bg-hover)}.banner__dismiss{color:var(--fab-text-2);cursor:pointer;background:0 0;border:none;padding:4px}.banner__dismiss:hover{color:var(--fab-text-0)}.banner__dismiss svg{width:16px;height:16px}.modal-scrim,.modal-overlay,.dialog-scrim{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--fab-z-modal);background:#0009;justify-content:center;align-items:center;animation:.15s fab-fade-in;display:flex;position:fixed;inset:0}.modal,.modal-card,.dialog{background:var(--fab-bg-card);border:1px solid var(--fab-border);border-radius:var(--fab-radius-xl);width:90%;max-width:560px;max-height:85vh;animation:fab-scale-in .2s var(--fab-ease);flex-direction:column;display:flex;position:relative;box-shadow:0 16px 48px #00000080}.modal--sm{max-width:360px}.modal--md{max-width:560px}.modal--lg{max-width:720px}.modal--xl{max-width:960px}.dialog--wide,.modal-wide{max-width:720px}.api-guide-dialog{width:92%;max-width:780px;max-height:88vh}.api-guide-dialog__header{justify-content:space-between;align-items:flex-start;gap:var(--fab-space-4);padding:var(--fab-space-5) var(--fab-space-6) var(--fab-space-4);border-bottom:1px solid var(--fab-border);flex-shrink:0;display:flex}.api-guide-dialog__header h2{font-size:var(--fab-fs-lg);font-weight:var(--fab-fw-bold);color:var(--fab-text-0);margin:var(--fab-space-1) 0 var(--fab-space-1);font-family:var(--fab-font-mono,monospace);word-break:break-all}.api-guide-dialog__header p{color:var(--fab-text-2);font-size:var(--fab-fs-sm);margin:0}.api-guide-dialog__header>button{margin-top:var(--fab-space-1);flex-shrink:0}.api-guide-dialog__body{padding:var(--fab-space-5) var(--fab-space-6);gap:var(--fab-space-5);flex-direction:column;flex:1;display:flex;overflow-y:auto}.api-guide-dialog__body section{gap:var(--fab-space-2);flex-direction:column;display:flex}.api-guide-dialog__actions{justify-content:flex-end;gap:var(--fab-space-2);padding:var(--fab-space-4) var(--fab-space-6);border-top:1px solid var(--fab-border);flex-shrink:0;display:flex}.api-guide-code{background:var(--fab-bg-2,#00000040);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);padding:var(--fab-space-4);font-size:var(--fab-fs-xs,.75rem);font-family:var(--fab-font-mono,monospace);color:var(--fab-text-1);white-space:pre;margin:0;overflow-x:auto}.api-guide-chip-list{gap:var(--fab-space-2);flex-wrap:wrap;display:flex}.modal__header,.modal-header{padding:var(--fab-space-5) var(--fab-space-6) var(--fab-space-3);border-bottom:1px solid var(--fab-border);justify-content:space-between;align-items:flex-start;display:flex}.modal__title,.modal-title{font-size:var(--fab-fs-lg);font-weight:var(--fab-fw-bold);color:var(--fab-text-0);margin:0}.modal__close,.modal-close{color:var(--fab-text-2);cursor:pointer;border-radius:var(--fab-radius-sm);background:0 0;border:none;padding:4px}.modal__close:hover,.modal-close:hover{color:var(--fab-text-0)}.modal__close svg,.modal-close svg{width:20px;height:20px}.modal__body,.modal-body{padding:var(--fab-space-5) var(--fab-space-6);flex:1;overflow-y:auto}.modal__footer,.modal-footer{justify-content:flex-end;gap:var(--fab-space-2);padding:var(--fab-space-4) var(--fab-space-6);border-top:1px solid var(--fab-border);display:flex}.modal__discard-overlay{border-radius:var(--fab-radius-xl);z-index:2;background:#000000b3;place-items:center;display:grid;position:absolute;inset:0}.modal__discard-card{background:var(--fab-bg-2);border:1px solid var(--fab-border);border-radius:var(--fab-radius-lg);padding:var(--fab-space-5);gap:var(--fab-space-2);flex-direction:column;max-width:380px;display:flex}.modal__discard-actions{gap:var(--fab-space-2);margin-top:var(--fab-space-3);justify-content:flex-end;display:flex}.toast-stack{top:var(--fab-space-4);right:var(--fab-space-4);z-index:var(--fab-z-toast);gap:var(--fab-space-2);flex-direction:column;display:flex;position:fixed}.toast{align-items:flex-start;gap:var(--fab-space-3);padding:var(--fab-space-3) var(--fab-space-4);background:var(--fab-bg-2);border:1px solid var(--fab-border);border-radius:var(--fab-radius-lg);box-shadow:var(--fab-shadow-lg);min-width:300px;max-width:420px;animation:fab-slide-in .3s var(--fab-ease);display:flex}.toast--success{border-left:3px solid var(--fab-success)}.toast--error{border-left:3px solid var(--fab-critical)}.toast--info{border-left:3px solid var(--fab-info)}.toast__icon{color:var(--fab-text-2);flex-shrink:0}.toast__icon svg{width:18px;height:18px}.toast--success .toast__icon{color:var(--fab-success)}.toast--error .toast__icon{color:var(--fab-critical)}.toast--info .toast__icon{color:var(--fab-info)}.toast__body{flex:1;min-width:0}.toast__title{font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-semi);color:var(--fab-text-0);margin-bottom:2px}.toast__description{font-size:var(--fab-fs-xs);color:var(--fab-text-1)}.toast__action{color:var(--fab-shield-light);font-size:var(--fab-fs-xs);font-weight:var(--fab-fw-semi);cursor:pointer;background:0 0;border:none;padding:4px 8px}.toast__close{color:var(--fab-text-2);cursor:pointer;background:0 0;border:none;padding:2px}.toast__close:hover{color:var(--fab-text-0)}.toast__close svg{width:14px;height:14px}.tooltip{z-index:var(--fab-z-tooltip);background:var(--fab-bg-3);border:1px solid var(--fab-border-light);border-radius:var(--fab-radius-sm);color:var(--fab-text-0);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--fab-duration) var(--fab-ease);box-shadow:var(--fab-shadow-md);padding:4px 10px;font-size:11px;position:fixed}.tooltip--visible{opacity:1}.tooltip--rich{white-space:normal;background:var(--fab-bg-1);border-color:var(--fab-border-light);width:min(440px,100vw - 32px);padding:12px 14px}.rich-tooltip{gap:8px;line-height:1.45;display:grid}.rich-tooltip__title{color:var(--fab-text-0);font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-semi)}.rich-tooltip__copy{color:var(--fab-text-1);font-size:var(--fab-fs-sm)}.rich-tooltip__list{gap:6px;display:grid}.rich-tooltip__list span{color:var(--fab-text-1);font-size:var(--fab-fs-xs);gap:2px;display:grid}.rich-tooltip__list strong{color:var(--fab-gold);font-size:10px;font-weight:var(--fab-fw-bold);letter-spacing:.05em;text-transform:uppercase}.tooltip-stack{gap:6px;line-height:1.4;display:grid}.tooltip-stack p{color:var(--fab-text-1);margin:0}.tooltip-stack small{color:var(--fab-text-2)}.project-form-page{max-width:960px}.project-plutus-products{margin-top:var(--fab-space-4)}.mirror-evidence-tooltip,.mirror-item-tooltip,.mirror-action-tooltip{gap:var(--fab-space-3);line-height:1.45;display:grid}.mirror-evidence-tooltip__header{gap:var(--fab-space-2);justify-content:space-between;align-items:center;display:flex}.mirror-evidence-tooltip__header strong,.mirror-item-tooltip>strong,.mirror-action-tooltip>strong{color:var(--fab-text-0);font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-bold)}.mirror-evidence-tooltip__facts,.mirror-item-tooltip dl,.mirror-action-tooltip dl{gap:var(--fab-space-2);margin:0;display:grid}.mirror-evidence-tooltip__facts>div,.mirror-item-tooltip dl>div,.mirror-action-tooltip dl>div{gap:var(--fab-space-2);grid-template-columns:96px minmax(0,1fr);display:grid}.mirror-evidence-tooltip dt,.mirror-item-tooltip dt,.mirror-action-tooltip dt{color:var(--fab-gold);font-size:9px;font-weight:var(--fab-fw-bold);letter-spacing:.04em;text-transform:uppercase}.mirror-evidence-tooltip dd,.mirror-item-tooltip dd,.mirror-item-tooltip>span,.mirror-action-tooltip dd,.mirror-action-tooltip>span{color:var(--fab-text-1);font-size:var(--fab-fs-xs);overflow-wrap:anywhere;margin:0}.mirror-evidence-tooltip__section{padding-top:var(--fab-space-2);border-top:1px solid var(--fab-border);gap:4px;display:grid}.mirror-evidence-tooltip__section strong{color:var(--fab-text-0);font-size:var(--fab-fs-xs);font-weight:var(--fab-fw-semi)}.mirror-evidence-tooltip__section span,.mirror-evidence-tooltip__section li{color:var(--fab-text-1);font-size:var(--fab-fs-xs);overflow-wrap:anywhere}.mirror-evidence-tooltip__section ul{padding-left:var(--fab-space-4);gap:3px;margin:0;display:grid}.mirror-evidence-criteria-table-wrap{gap:var(--fab-space-2);width:100%;display:grid;overflow-x:auto}.mirror-evidence-criteria-table{border-collapse:collapse;table-layout:fixed;border:1px solid color-mix(in srgb, var(--fab-info) 34%, transparent);border-radius:var(--fab-radius-sm);width:100%;min-width:620px;overflow:hidden}.mirror-evidence-criteria-table th,.mirror-evidence-criteria-table td{border-bottom:1px solid color-mix(in srgb, var(--fab-info) 24%, transparent);border-right:1px solid color-mix(in srgb, var(--fab-info) 18%, transparent);vertical-align:top;text-align:left;padding:8px 10px}.mirror-evidence-criteria-table th:last-child,.mirror-evidence-criteria-table td:last-child{border-right:0}.mirror-evidence-criteria-table tr:last-child td{border-bottom:0}.mirror-evidence-criteria-table th{color:var(--fab-gold);background:color-mix(in srgb, var(--fab-info) 12%, var(--fab-bg-1));font-size:9px;font-weight:var(--fab-fw-bold);letter-spacing:.04em;text-transform:uppercase}.mirror-evidence-criteria-table td{color:var(--fab-text-1);font-size:var(--fab-fs-xs);overflow-wrap:anywhere}.mirror-evidence-criteria-table td>span{display:block}.mirror-evidence-criteria-table td:first-child{color:var(--fab-text-0);font-weight:var(--fab-fw-semi)}.mirror-evidence-risk-tag{border-radius:var(--fab-radius-pill);width:fit-content;font-size:10px;font-weight:var(--fab-fw-semi);border:1px solid #0000;margin-top:6px;padding:2px 7px;line-height:1.4}.mirror-evidence-risk-tag--low{border-color:color-mix(in srgb, var(--fab-success) 40%, transparent);background:var(--fab-success-bg);color:#71d69b}.mirror-evidence-risk-tag--medium{border-color:color-mix(in srgb, var(--fab-medium) 44%, transparent);background:var(--fab-medium-bg);color:var(--fab-medium)}.mirror-evidence-risk-tag--high{border-color:color-mix(in srgb, var(--fab-critical) 44%, transparent);color:#eb7070;background:#d22d2d24}.mirror-evidence-criteria-table small{color:var(--fab-text-2);text-transform:none;margin-bottom:4px;font-size:10px;display:block}.mirror-evidence-criteria-table ul{padding-left:var(--fab-space-3)}.mirror-evidence-tooltip__section--info{padding:var(--fab-space-2);border:1px solid color-mix(in srgb, var(--fab-info) 38%, transparent);border-radius:var(--fab-radius-md);background:var(--fab-info-bg)}.mirror-evidence-tooltip__section--pipeline{padding:var(--fab-space-2);border:1px solid color-mix(in srgb, var(--fab-success) 34%, transparent);border-radius:var(--fab-radius-md);background:color-mix(in srgb, var(--fab-success-bg) 72%, var(--fab-bg-1))}.mirror-pipeline-evidence{gap:var(--fab-space-2);display:grid}.mirror-pipeline-evidence__run{gap:var(--fab-space-2);padding:var(--fab-space-2);border:1px solid color-mix(in srgb, var(--fab-info) 30%, transparent);border-radius:var(--fab-radius-md);background:color-mix(in srgb, var(--fab-bg-0) 78%, transparent);display:grid}.mirror-pipeline-evidence__run>span{gap:2px;display:grid}.mirror-pipeline-evidence__run strong{color:var(--fab-text-0);font-size:var(--fab-fs-xs)}.mirror-pipeline-evidence__run small,.mirror-pipeline-evidence>small{color:var(--fab-text-2);overflow-wrap:anywhere;font-size:10px}.mirror-pipeline-evidence__run ul{flex-wrap:wrap;gap:4px;margin:0;padding:0;list-style:none;display:flex}.mirror-pipeline-evidence__run li{border:1px solid color-mix(in srgb, var(--fab-info) 28%, transparent);border-radius:var(--fab-radius-pill);max-width:100%;color:var(--fab-text-1);background:color-mix(in srgb, var(--fab-info-bg) 64%, transparent);overflow-wrap:anywhere;padding:2px 6px;font-size:10px}.mirror-pipeline-evidence--compact .mirror-pipeline-evidence__run{padding:var(--fab-space-2)}.mirror-evidence-tooltip__section--warning{padding:var(--fab-space-2);border:1px solid color-mix(in srgb, var(--fab-medium) 42%, transparent);border-radius:var(--fab-radius-md);background:var(--fab-medium-bg)}.mirror-evidence-tooltip__section--executive{padding:var(--fab-space-3);border:1px solid color-mix(in srgb, var(--fab-info) 44%, transparent);border-radius:var(--fab-radius-md);background:linear-gradient(135deg, color-mix(in srgb, var(--fab-info) 18%, transparent), transparent 72%), var(--fab-bg-1)}.mirror-evidence-tooltip__section--executive strong{color:var(--fab-text-0)}.mirror-evidence-tooltip__section--executive span{color:var(--fab-text-1);font-size:var(--fab-fs-sm);line-height:var(--fab-lh-relaxed)}.mirror-status-evidence-modal{gap:var(--fab-space-4);-webkit-user-select:text;user-select:text;display:grid}.mirror-status-evidence-modal h3{color:var(--fab-text-0);margin:4px 0 0}.mirror-status-evidence-modal__header>div:first-child{gap:var(--fab-space-2);min-width:0;display:grid}.mirror-status-evidence-modal__item-title{max-width:100%;color:var(--fab-text-0);font-size:22px;font-weight:var(--fab-fw-bold);overflow-wrap:anywhere;margin:0;line-height:1.2}.mirror-status-evidence-modal__tags{gap:var(--fab-space-2);flex-wrap:wrap;align-items:center;display:flex}.mirror-status-evidence-modal__tabs{border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:var(--fab-bg-1);gap:3px;width:fit-content;max-width:100%;padding:3px;display:inline-flex;overflow-x:auto}.mirror-status-evidence-modal__tab{border-radius:var(--fab-radius-sm);min-height:30px;color:var(--fab-text-1);font:inherit;font-size:var(--fab-fs-xs);font-weight:var(--fab-fw-semi);white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:4px 10px;display:inline-flex}.mirror-status-evidence-modal__tab:hover,.mirror-status-evidence-modal__tab--active{border-color:color-mix(in srgb, var(--fab-info) 44%, transparent);background:color-mix(in srgb, var(--fab-info) 14%, transparent);color:var(--fab-text-0)}.mirror-status-evidence-modal__page,.mirror-status-evidence-history{gap:var(--fab-space-4);display:grid}.mirror-status-evidence-history__facts{gap:var(--fab-space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.mirror-status-evidence-history__facts>span{min-width:0;padding:var(--fab-space-2);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:color-mix(in srgb, var(--fab-bg-1) 82%, transparent);gap:3px;display:grid}.mirror-status-evidence-history__facts small{color:var(--fab-gold);font-size:9px;font-weight:var(--fab-fw-bold);letter-spacing:.04em;text-transform:uppercase}.mirror-status-evidence-history__facts strong{color:var(--fab-text-0);font-size:var(--fab-fs-xs);overflow-wrap:anywhere}.mirror-status-evidence-history__facts em{color:var(--fab-text-2);overflow-wrap:anywhere;font-size:10px;font-style:normal}.mirror-status-evidence-history__charts{gap:var(--fab-space-3);grid-template-columns:minmax(0,1.45fr) minmax(180px,.8fr);display:grid}.mirror-run-history-chart,.mirror-token-reduction-chart,.mirror-status-history-chart{gap:var(--fab-space-2);min-width:0;padding:var(--fab-space-2);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:color-mix(in srgb, var(--fab-bg-1) 82%, transparent);display:grid}.mirror-status-history-chart{grid-column:1/-1}.mirror-run-history-chart__header{gap:2px;display:grid}.mirror-run-history-chart__header strong{color:var(--fab-text-0);font-size:var(--fab-fs-xs)}.mirror-run-history-chart__header small{color:var(--fab-text-2);font-size:10px}.mirror-run-history-chart__plot{min-height:160px;padding:var(--fab-space-2) 0 0;overflow-x:auto}.mirror-token-reduction-chart__bar-group>small{color:var(--fab-text-2);text-align:center;font-size:9px;line-height:1.2}.mirror-run-history-chart__svg{width:max(100%,320px);height:150px;display:block}.mirror-run-history-chart__axis{stroke:var(--fab-border);stroke-width:1px}.mirror-run-history-chart__line{stroke:currentColor;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;opacity:.9}.mirror-run-history-chart__point circle{fill:var(--fab-bg-2);stroke:currentColor;stroke-width:2.5px}.mirror-run-history-chart__x-label{fill:var(--fab-text-2);font-size:9px}.mirror-run-history-chart__series--confidence{color:var(--fab-success)}.mirror-run-history-chart__series--estimated{color:var(--fab-info)}.mirror-run-history-chart__series--tokens-used{color:var(--fab-medium)}.mirror-run-history-chart__series--tokens-baseline{color:#9476db}.mirror-run-history-chart__series--tzu-gains{color:#3eccbb}.mirror-run-history-chart__series--tzu-gains-eur{color:#ea833e}.mirror-run-history-chart__legend{flex-wrap:wrap;gap:5px 10px;display:flex}.mirror-run-history-chart__legend-button{appearance:none;color:var(--fab-text-2);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:5px;padding:2px 4px;font-size:10px;display:inline-flex}.mirror-run-history-chart__legend-button:hover,.mirror-run-history-chart__legend-button:focus-visible{border-color:var(--fab-border-strong);color:var(--fab-text)}.mirror-run-history-chart__legend-button:focus-visible{outline:2px solid var(--fab-focus);outline-offset:2px}.mirror-run-history-chart__legend-button--muted{opacity:.45;text-decoration:line-through}.mirror-run-history-chart__legend i{background:currentColor;border-radius:50%;width:8px;height:8px}.mirror-token-reduction-chart__plot{align-items:end;gap:var(--fab-space-2);min-height:132px;padding-top:var(--fab-space-2);display:flex;overflow-x:auto}.mirror-token-reduction-chart__bar-group{flex:0 0 44px;align-items:end;gap:5px;display:grid}.mirror-token-reduction-chart__bar{background:linear-gradient(180deg, #3eccbb, color-mix(in srgb, var(--fab-info) 70%, var(--fab-bg-1)));border-bottom:1px solid var(--fab-border);border-radius:5px 5px 0 0;justify-content:center;justify-self:center;align-items:start;width:100%;max-width:34px;min-height:4px;display:flex}.mirror-token-reduction-chart__bar small{color:var(--fab-bg-0);font-size:9px;font-weight:var(--fab-fw-bold);line-height:1.4}.mirror-status-history-chart__track{gap:var(--fab-space-2);padding:var(--fab-space-1) 0 0;margin:0;list-style:none;display:flex;overflow-x:auto}.mirror-status-history-chart__point{min-width:0;padding-left:var(--fab-space-3);flex:0 0 150px;gap:4px;display:grid;position:relative}.mirror-status-history-chart__point:before{content:"";width:7px;height:7px;color:var(--fab-info);background:currentColor;border:1px solid;border-radius:50%;position:absolute;top:8px;left:0}.mirror-status-history-chart__point:not(:last-child):after{content:"";background:var(--fab-border);width:calc(100% - 7px);height:1px;position:absolute;top:11px;left:7px}.mirror-status-history-chart__point small,.mirror-status-history-chart__point span{color:var(--fab-text-2);overflow-wrap:anywhere;font-size:10px}.mirror-run-history-table{border-collapse:collapse;table-layout:fixed;border:1px solid color-mix(in srgb, var(--fab-info) 28%, transparent);border-radius:var(--fab-radius-sm);width:100%;min-width:920px;overflow:hidden}.mirror-run-history-table th,.mirror-run-history-table td{border-bottom:1px solid var(--fab-border);text-align:left;vertical-align:top;padding:8px 10px}.mirror-run-history-table th{color:var(--fab-gold);background:color-mix(in srgb, var(--fab-info) 10%, var(--fab-bg-1));font-size:9px;font-weight:var(--fab-fw-bold);letter-spacing:.04em;text-transform:uppercase}.mirror-run-history-table td{color:var(--fab-text-1);font-size:var(--fab-fs-xs);overflow-wrap:anywhere}.mirror-run-history-table__row--current td{background:color-mix(in srgb, var(--fab-info) 8%, transparent)}.mirror-run-history-table td>strong,.mirror-run-history-table td>small{display:block}.mirror-run-history-table td>small{color:var(--fab-text-2);margin-top:3px;font-size:10px}.mirror-status-audit-log{gap:var(--fab-space-2);padding-left:var(--fab-space-4);margin:0;display:grid}.mirror-status-audit-log li{color:var(--fab-text-1);font-size:var(--fab-fs-xs)}.mirror-status-audit-log li strong,.mirror-status-audit-log li span,.mirror-status-audit-log li small{display:block}.mirror-plan-questions-modal,.mirror-agentic-follow-up-modal{gap:var(--fab-space-4);display:grid}.mirror-agentic-follow-up-modal h3{color:var(--fab-text-0);font-size:var(--fab-fs-md);line-height:var(--fab-lh-normal);margin:4px 0 0}.mirror-agentic-follow-up-modal__scope{gap:var(--fab-space-2);display:grid}.mirror-agentic-follow-up-modal__scope .field-label--checkbox{align-items:flex-start}.mirror-agentic-follow-up-modal__scope .field-label--checkbox>span{gap:3px;display:grid}.mirror-agentic-follow-up-modal__scope strong{color:var(--fab-text-0);font-size:var(--fab-fs-sm)}.mirror-agentic-follow-up-modal__scope small{color:var(--fab-text-2);font-size:var(--fab-fs-xs);line-height:var(--fab-lh-relaxed)}.mirror-external-audit-modal,.mirror-external-audit-result{gap:var(--fab-space-4);display:grid}.mirror-external-audit-modal__intro{align-items:center;gap:var(--fab-space-3);padding:var(--fab-space-3);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:var(--fab-bg-1);color:var(--fab-text-1);font-size:var(--fab-fs-sm);line-height:var(--fab-lh-relaxed);grid-template-columns:auto minmax(0,1fr);display:grid}.mirror-external-audit-modal__intro svg{color:var(--fab-shield-light)}.mirror-external-audit-modal__checks,.mirror-external-audit-result__summary{align-items:center;gap:var(--fab-space-2);flex-wrap:wrap;display:flex}.mirror-external-audit-result{padding:var(--fab-space-3);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:var(--fab-bg-0)}.mirror-external-audit-result__facts{gap:var(--fab-space-2);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin:0;display:grid}.mirror-external-audit-result__facts>div{padding:var(--fab-space-2);border:1px solid var(--fab-border);border-radius:var(--fab-radius-sm);background:var(--fab-bg-1);gap:2px;display:grid}.mirror-external-audit-result__facts dt{color:var(--fab-text-muted);font-size:10px;font-weight:var(--fab-fw-semi);letter-spacing:.06em;text-transform:uppercase}.mirror-external-audit-result__facts dd{color:var(--fab-text-0);font-size:var(--fab-fs-lg);font-weight:var(--fab-fw-bold);margin:0}.mirror-external-audit-result__grid{gap:var(--fab-space-3);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.mirror-external-audit-result__grid section,.mirror-external-audit-result__summary-text{gap:var(--fab-space-2);padding:var(--fab-space-3);border:1px solid var(--fab-border);border-radius:var(--fab-radius-sm);background:var(--fab-bg-1);color:var(--fab-text-1);font-size:var(--fab-fs-xs);line-height:var(--fab-lh-relaxed);display:grid}.mirror-external-audit-result__grid strong,.mirror-external-audit-result__summary-text strong{color:var(--fab-text-0);font-size:var(--fab-fs-sm)}.mirror-external-audit-result__grid ul{padding-left:var(--fab-space-4);margin:0}.mirror-external-audit-result__summary-text small{color:var(--fab-text-2)}.mirror-plan-questions-modal h3{color:var(--fab-text-0);font-size:var(--fab-fs-md);line-height:var(--fab-lh-normal);margin:4px 0 0}.mirror-plan-questions-modal__summary{gap:var(--fab-space-2);color:var(--fab-text-2);font-size:var(--fab-fs-xs);flex-wrap:wrap;align-items:center;display:flex}.mirror-plan-questions-modal__summary a{color:var(--fab-accent);font-weight:var(--fab-fw-semi)}.mirror-plan-questions-modal__questions{gap:var(--fab-space-3);display:grid}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);z-index:60;background:var(--fab-bg-3);border:1px solid var(--fab-border-light);border-radius:var(--fab-radius-sm);color:var(--fab-text-0);white-space:nowrap;opacity:0;pointer-events:none;padding:4px 8px;font-size:11px;transition:opacity .14s;position:absolute;top:50%;left:calc(100% + 8px);transform:translateY(-50%)}[data-tooltip]:hover:after,[data-tooltip]:focus-visible:after{opacity:1}.spinner,.fab-spinner{border:2px solid var(--fab-border-light);border-top-color:var(--fab-shield-blue);border-radius:50%;width:18px;height:18px;animation:.6s linear infinite fab-spin;display:inline-block}.loading-shell{justify-content:center;align-items:center;gap:var(--fab-space-4);min-height:60vh;color:var(--fab-text-2);flex-direction:column;display:flex}.loading-shell--compact{min-height:240px}.loading-shell__pulse{background:var(--fab-shield-blue);width:32px;height:32px;animation:fab-pulse 1.4s var(--fab-ease) infinite;opacity:.6;border-radius:50%}.empty-state,.empty-state-panel{padding:var(--fab-space-12) var(--fab-space-8);text-align:center;color:var(--fab-text-2);background:var(--fab-bg-card);border:1px dashed var(--fab-border);border-radius:var(--fab-radius-lg);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state h3,.empty-state strong,.empty-state-panel strong{font-size:var(--fab-fs-md);font-weight:var(--fab-fw-semi);color:var(--fab-text-1);margin-bottom:var(--fab-space-2);display:block}.empty-state p,.empty-state-panel p{font-size:var(--fab-fs-sm);max-width:400px;margin:0 auto var(--fab-space-3)}.auth-stage{background:var(--fab-bg-0);min-height:100vh;padding:var(--fab-space-8);grid-template-columns:1fr;place-items:center;display:grid;position:relative}.auth-stage:before{content:"";background:var(--fab-shield-blue);filter:blur(120px);opacity:.12;pointer-events:none;border-radius:50%;width:500px;height:500px;position:absolute;top:-150px;right:-100px}.auth-card{text-align:center;background:var(--fab-bg-card);border:1px solid var(--fab-border);border-radius:var(--fab-radius-xl);padding:var(--fab-space-12) var(--fab-space-10);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);width:100%;max-width:420px;position:relative}.auth-card h1{font-size:var(--fab-fs-2xl);font-weight:var(--fab-fw-bold);letter-spacing:.15em;background:linear-gradient(135deg, var(--fab-gold), var(--fab-gold-light));-webkit-text-fill-color:transparent;margin-bottom:var(--fab-space-1);-webkit-background-clip:text;background-clip:text}.auth-subtitle{font-size:var(--fab-fs-sm);color:var(--fab-text-2);margin-bottom:var(--fab-space-8)}.auth-logo{border-radius:var(--fab-radius-lg);background:linear-gradient(135deg, var(--fab-shield-blue), var(--fab-shield-dark));width:72px;height:72px;color:var(--fab-gold);margin:0 auto var(--fab-space-4);filter:drop-shadow(0 0 20px #e6b0334d);justify-content:center;align-items:center;display:inline-flex}.auth-logo svg{width:36px;height:36px;color:var(--fab-gold)}.auth-cta{width:100%;padding:var(--fab-space-3) var(--fab-space-8);font-size:var(--fab-fs-md);margin-top:var(--fab-space-2);justify-content:center}.auth-note{font-size:var(--fab-fs-xs);color:var(--fab-text-muted);margin-top:var(--fab-space-4)}.auth-panel{gap:var(--fab-space-4);flex-direction:column;display:flex}.brand-lockup{align-items:center;gap:var(--fab-space-3);display:flex}.brand-lockup__icon{border-radius:var(--fab-radius-md);background:linear-gradient(135deg, var(--fab-gold), var(--fab-gold-dark));color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.brand-lockup__icon svg{width:18px;height:18px}.brand-lockup__copy{flex-direction:column;gap:2px;min-width:0;display:flex}.brand-lockup__title{font-size:var(--fab-fs-md);font-weight:var(--fab-fw-bold);letter-spacing:.12em;background:linear-gradient(135deg, var(--fab-gold), var(--fab-gold-light));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.brand-lockup__subtitle{color:var(--fab-text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:10px}.stack-section{gap:var(--fab-space-5);flex-direction:column;display:flex}.stack-list{gap:var(--fab-space-3);flex-direction:column;display:flex}.stack-list--tight{gap:var(--fab-space-2)}.detail-list{gap:var(--fab-space-2);flex-direction:column;padding:0;list-style:none;display:flex}.detail-list li{font-size:var(--fab-fs-sm);color:var(--fab-text-1);padding:var(--fab-space-2) 0;border-bottom:1px solid var(--fab-border)}.detail-list li:last-child{border-bottom:none}.definition-list{flex-direction:column;display:flex}.definition-list div{gap:var(--fab-space-3);padding:var(--fab-space-2) 0;border-bottom:1px solid var(--fab-border);font-size:var(--fab-fs-sm);grid-template-columns:1fr auto;display:grid}.definition-list strong{color:var(--fab-text-0);text-align:right}.definition-list code{font-family:var(--fab-font-mono);color:var(--fab-shield-light);font-size:12px}.provider-strip{align-items:center;gap:var(--fab-space-3);padding:var(--fab-space-3) var(--fab-space-4);background:var(--fab-bg-card);border:1px solid var(--fab-border);border-radius:var(--fab-radius-lg);margin-bottom:var(--fab-space-4);flex-wrap:wrap;display:flex}.provider-strip__label{font-size:11px;font-weight:var(--fab-fw-semi);color:var(--fab-text-muted);text-transform:uppercase;letter-spacing:.06em}.provider-strip__pill{align-items:center;gap:var(--fab-space-2);background:var(--fab-bg-1);border:1px solid var(--fab-border);border-radius:var(--fab-radius-full);font-size:var(--fab-fs-xs);color:var(--fab-text-2);padding:4px 10px;display:inline-flex}.provider-strip__pill--active{color:#75d79e;background:#34b26814;border-color:#2d8652}.provider-strip__pill small{color:var(--fab-text-muted);margin-left:4px;font-size:10px}.provider-strip__dot{background:currentColor;border-radius:50%;width:6px;height:6px}.provider-strip__meta{font-size:var(--fab-fs-xs);color:var(--fab-text-muted);margin-left:auto}.repository-page-toolbar{justify-content:flex-end;gap:var(--fab-space-2);display:flex}.resource-view-nav{align-items:center;gap:var(--fab-space-2);padding:var(--fab-space-2);background:var(--fab-bg-1);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);display:flex;overflow-x:auto}.resource-view-nav__link{align-items:center;gap:var(--fab-space-2);min-height:34px;padding:var(--fab-space-2) var(--fab-space-3);border-radius:var(--fab-radius-sm);color:var(--fab-text-1);font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-semi);white-space:nowrap;border:1px solid #0000;display:inline-flex}.resource-view-nav__link:hover,.resource-view-nav__link--active{color:var(--fab-text-0);background:var(--fab-bg-hover);border-color:var(--fab-border-light)}.resource-view-nav__link--active{box-shadow:inset 3px 0 0 var(--fab-gold);border-color:#e6b03373}.resource-view-nav__count{border-radius:var(--fab-radius-full);background:var(--fab-bg-2);min-width:22px;height:22px;color:var(--fab-text-2);font-size:var(--fab-fs-xs);justify-content:center;align-items:center;padding:0 7px;display:inline-flex}.repository-table-shell{gap:var(--fab-space-3);background:var(--fab-bg-1);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);display:grid;overflow:hidden}.repository-table-shell__header{justify-content:space-between;align-items:center;gap:var(--fab-space-4);padding:var(--fab-space-4) var(--fab-space-5) 0;display:flex}.repository-table-shell__header h2{font-size:var(--fab-fs-lg);margin-top:2px}.repository-table-scroll{overflow-x:auto}.repository-resource-table,.repository-sync-table,.repository-audit-table{min-width:1040px}.repository-audit-table{min-width:1280px}.repository-resource-table td,.repository-sync-table td,.repository-audit-table td{vertical-align:middle}.repository-resource-table .status-pill,.repository-sync-table .status-pill,.repository-audit-table .status-pill{margin-right:var(--fab-space-1)}.repository-audit-table__findings-cell{vertical-align:top;min-width:680px}.repository-audit-findings-summary{margin-bottom:var(--fab-space-2)}.repository-audit-findings-table{table-layout:fixed;margin-top:var(--fab-space-2);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);overflow:hidden}.repository-audit-findings-table th{z-index:auto;background:var(--fab-bg-2);position:static;top:auto}.repository-audit-findings-table th:first-child{width:34%}.repository-audit-findings-table th:nth-child(2){width:22%}.repository-audit-findings-table th:nth-child(3){width:14%}.repository-audit-findings-table th:nth-child(4){width:30%}.repository-audit-findings-table td{vertical-align:top;background:var(--fab-bg-1)}.repository-audit-findings-table td>strong{font-size:var(--fab-fs-xs)}.repository-audit-evidence-list{padding-left:var(--fab-space-4);color:var(--fab-text-2);font-size:var(--fab-fs-xs);gap:4px;margin:0;line-height:1.35;display:grid}.repository-audit-evidence-list li{overflow-wrap:anywhere}.repository-actions{justify-content:flex-end;gap:4px}.repository-workspace{gap:var(--fab-space-4);display:grid}.repository-workspace__header{align-items:start;gap:var(--fab-space-4);padding-bottom:var(--fab-space-3);border-bottom:1px solid var(--fab-border);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.repository-workspace__header h2{font-size:var(--fab-fs-xl);margin-top:2px}.repository-workspace__actions,.repository-form-actions{justify-content:flex-end;align-items:center;gap:var(--fab-space-2);display:inline-flex}.back-link{align-items:center;gap:var(--fab-space-2);min-height:28px;color:var(--fab-text-1);font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-semi);display:inline-flex}.back-link:hover{color:var(--fab-shield-light)}.repository-action-pipeline{padding:var(--fab-space-4);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:#0e121b8f}.repository-detail-grid{border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0;display:grid;overflow:hidden}.repository-detail-grid>div{padding:var(--fab-space-3) var(--fab-space-4);border-right:1px solid var(--fab-border);border-bottom:1px solid var(--fab-border);background:var(--fab-bg-1);gap:4px;display:grid}.repository-detail-grid small{color:var(--fab-text-2);font-size:var(--fab-fs-xs);font-weight:var(--fab-fw-semi);letter-spacing:.04em;text-transform:uppercase}.repository-detail-grid strong{color:var(--fab-text-0);overflow-wrap:anywhere}.repository-workspace__notes{color:var(--fab-text-1);font-size:var(--fab-fs-sm)}.repository-form-page{max-width:980px}.repository-form-actions{margin-top:var(--fab-space-2);justify-content:flex-start}.content-grid{gap:var(--fab-space-5);grid-template-columns:repeat(auto-fit,minmax(360px,1fr));display:grid}.content-grid--balanced{grid-template-columns:1fr 1fr}.settings-grid{gap:var(--fab-space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.placeholder-grid{gap:var(--fab-space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.catalog-grid{gap:var(--fab-space-4);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));display:grid}.catalog-grid--providers{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.timeline{gap:var(--fab-space-3);flex-direction:column;display:flex}.timeline-item{gap:var(--fab-space-3);padding:var(--fab-space-2) 0;display:flex}.timeline-item__dot{background:var(--fab-shield-blue);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:6px}.timeline-item__dot.tone-teal{background:var(--fab-success)}.timeline-item__dot.tone-error{background:var(--fab-critical)}.timeline-item__dot.tone-muted{background:var(--fab-text-muted)}.timeline-item small{color:var(--fab-text-muted);font-size:11px}.timeline-item strong{font-size:var(--fab-fs-sm);color:var(--fab-text-0);margin-top:2px;display:block}.timeline-item p{font-size:var(--fab-fs-sm);color:var(--fab-text-1);margin-top:2px}.search-field{align-items:center;gap:var(--fab-space-2);display:flex}.search-field input{background:var(--fab-bg-1);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);width:100%;color:var(--fab-text-0);font-size:var(--fab-fs-sm);padding:8px 12px}.material-symbols-outlined{font-family:Inter,sans-serif;font-weight:var(--fab-fw-medium);font-size:var(--fab-fs-md);color:inherit;justify-content:center;align-items:center;display:inline-flex}:root{--primary:var(--fab-shield-blue);--secondary:var(--fab-shield-light);--tertiary:var(--fab-success);--error:var(--fab-critical);--text:var(--fab-text-0);--muted:var(--fab-text-2);--outline:var(--fab-border);--surface:var(--fab-bg-0);--surface-low:var(--fab-bg-1);--surface-container:var(--fab-bg-2);--surface-high:var(--fab-bg-3);--surface-highest:var(--fab-bg-hover);--surface-variant:var(--fab-bg-card);--surface-lowest:var(--fab-bg-0);--shadow:var(--fab-shadow-md);--heading:var(--fab-font-sans);--body:var(--fab-font-sans);--font-page-title:var(--fab-fs-xl);--font-section:var(--fab-fs-md);--font-subsection:var(--fab-fs-sm);--font-body:var(--fab-fs-sm);--font-body-sm:var(--fab-fs-xs);--font-caption:var(--fab-fs-xs);--font-eyebrow:11px;--gap-section:var(--fab-space-4);--gap-stack:var(--fab-space-2);--pad-card:var(--fab-space-5);--row-height:36px;--row-height-sm:30px;--motion-fast:var(--fab-duration);--line-tight:var(--fab-lh-tight);--line-default:var(--fab-lh-normal)}.workspace-summary--compact{gap:var(--fab-space-3)}.workspace-summary--compact .workspace-summary__card{padding:var(--fab-space-4);min-height:auto}.repo-row{gap:var(--fab-space-3);padding:var(--fab-space-3) 0;border-bottom:1px solid var(--fab-border);font-size:var(--fab-fs-sm);grid-template-columns:1fr auto auto;display:grid}.repo-row strong{color:var(--fab-text-0);display:block}.repo-row small{color:var(--fab-text-2);font-size:11px}.repo-row:last-child{border-bottom:none}.repo-table{flex-direction:column;display:flex}.project-list{gap:var(--fab-space-3);display:grid}.project-card{background:var(--fab-bg-1);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);padding:var(--fab-space-4);gap:var(--fab-space-3);flex-direction:column;display:flex}.project-card__copy strong{color:var(--fab-text-0);font-size:var(--fab-fs-md);margin-bottom:2px;display:block}.project-card__copy p{color:var(--fab-text-2);font-size:var(--fab-fs-sm)}.project-card__metrics{gap:var(--fab-space-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.project-card__metrics div{flex-direction:column;gap:2px;display:flex}.project-card__metrics strong{font-size:var(--fab-fs-md);color:var(--fab-text-0)}.audit-finding{background:var(--fab-bg-1);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);padding:var(--fab-space-3);margin-bottom:var(--fab-space-2)}.audit-finding__header{justify-content:space-between;align-items:flex-start;gap:var(--fab-space-3);display:flex}.audit-finding__meta{gap:var(--fab-space-2);display:flex}.provider-card{background:var(--fab-bg-1);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);padding:var(--fab-space-3);font-size:var(--fab-fs-sm)}.provider-card__header{justify-content:space-between;align-items:center;gap:var(--fab-space-2);margin-bottom:var(--fab-space-2);display:flex}.field-action-row{gap:var(--fab-space-2);grid-template-columns:1fr auto;display:grid}.table-action-row{gap:var(--fab-space-2);justify-content:flex-end;display:flex}.conversation-layout{gap:var(--fab-space-5);grid-template-columns:1fr 320px;display:grid}.conversation-secure-grid{gap:var(--fab-space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.conversation-context-grid{gap:var(--fab-space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.conversation-card{background:var(--fab-bg-card);border:1px solid var(--fab-border);border-radius:var(--fab-radius-lg);padding:var(--fab-space-4);margin-bottom:var(--fab-space-3)}.conversation-card__header{justify-content:space-between;align-items:center;gap:var(--fab-space-3);display:flex}.conversation-message{padding:var(--fab-space-3) var(--fab-space-4);background:var(--fab-bg-1);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);margin-bottom:var(--fab-space-2)}.conversation-message__meta{gap:var(--fab-space-3);color:var(--fab-text-muted);font-size:11px;display:flex}.conversation-surface{gap:var(--fab-space-3);flex-direction:column;display:flex}.conversation-surface__header{justify-content:space-between;align-items:center;gap:var(--fab-space-3);margin-bottom:var(--fab-space-3);display:flex}.conversation-sidepanel{gap:var(--fab-space-3);flex-direction:column;display:flex}.conversation-draft-card--compact{padding:var(--fab-space-4)}.conversation-draft-card__meta{color:var(--fab-text-muted);font-size:11px}.conversation-definition-list--compact{font-size:var(--fab-fs-sm)}.settings-matrix{border-collapse:collapse;width:100%;font-size:var(--fab-fs-sm)}.settings-matrix th,.settings-matrix td{padding:var(--fab-space-2) var(--fab-space-3);text-align:left;border-bottom:1px solid var(--fab-border)}.settings-matrix th{color:var(--fab-text-2);text-transform:uppercase;letter-spacing:.04em;font-size:11px}.settings-matrix__row{transition:background var(--fab-duration) var(--fab-ease)}.settings-matrix__row:hover{background:var(--fab-bg-hover)}.settings-matrix__row--active{background:#2d72d214}.settings-matrix__wrap{overflow-x:auto}.settings-matrix-card{padding:0}.settings-matrix-card .section-card__header{padding:var(--fab-space-4) var(--fab-space-5);border-bottom:1px solid var(--fab-border);margin-bottom:0}.settings-editor-anchor{scroll-margin-top:6rem}.settings-editor-toolbar{justify-content:space-between;align-items:center;gap:var(--fab-space-3);margin-bottom:var(--fab-space-3);display:flex}.settings-editor-toolbar__copy{flex-direction:column;gap:2px;display:flex}.settings-editor-toolbar__copy strong{font-size:var(--fab-fs-md);color:var(--fab-text-0)}.migration-callout{background:var(--fab-medium-bg);border:1px solid var(--fab-medium);border-radius:var(--fab-radius-md);padding:var(--fab-space-4);gap:var(--fab-space-4);margin-bottom:var(--fab-space-3);align-items:center;display:flex}.markdown-viewer__heading--primary{font-size:var(--fab-fs-2xl);font-weight:var(--fab-fw-bold);margin-top:var(--fab-space-6);margin-bottom:var(--fab-space-3)}.markdown-viewer__heading--secondary{font-size:var(--fab-fs-lg);font-weight:var(--fab-fw-semi);margin-top:var(--fab-space-5);margin-bottom:var(--fab-space-2)}.markdown-viewer__heading--tertiary{font-size:11px;font-weight:var(--fab-fw-semi);text-transform:uppercase;letter-spacing:.06em;color:var(--fab-text-muted);margin-top:var(--fab-space-4);margin-bottom:var(--fab-space-2)}.markdown-viewer__paragraph{font-size:var(--fab-fs-sm);color:var(--fab-text-1);line-height:var(--fab-lh-normal);margin-bottom:var(--fab-space-3)}.knowledge-graph{gap:var(--fab-space-4);flex-direction:column;width:100%;display:flex}.knowledge-graph h2{font-size:var(--fab-fs-md);font-weight:var(--fab-fw-semi);margin-bottom:var(--fab-space-3)}.knowledge-graph p{font-size:var(--fab-fs-sm);color:var(--fab-text-1)}.knowledge-graph__querybar{padding:var(--fab-space-4)}.knowledge-graph__query-form{gap:var(--fab-space-2);align-items:stretch;display:flex}.knowledge-graph__query-form--compact{flex-wrap:wrap}.knowledge-graph__query-input{min-width:240px;padding:var(--fab-space-2) var(--fab-space-3);background:var(--fab-bg-1);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);color:var(--fab-text-0);font-size:var(--fab-fs-sm);flex:1}.knowledge-graph__query-input:focus{border-color:var(--fab-shield-blue);outline:none;box-shadow:0 0 0 3px #2d72d226}.knowledge-graph__query-submit{flex-shrink:0}.knowledge-graph__query-assist{gap:var(--fab-space-2);margin-top:var(--fab-space-3);padding-top:var(--fab-space-3);border-top:1px solid var(--fab-border);font-size:var(--fab-fs-sm);color:var(--fab-text-1);flex-direction:column;display:flex}.knowledge-graph__query-echo strong{color:var(--fab-text-0);margin-left:var(--fab-space-2);font-weight:var(--fab-fw-medium)}.knowledge-graph__query-interpretation p{color:var(--fab-text-1);margin-top:var(--fab-space-1);line-height:var(--fab-lh-normal)}.knowledge-graph__prompt-row{gap:var(--fab-space-2);flex-wrap:wrap;display:flex}.knowledge-graph__prompt-chip{background:var(--fab-bg-3);border:1px solid var(--fab-border);border-radius:var(--fab-radius-full);font-size:var(--fab-fs-xs);color:var(--fab-text-1);cursor:pointer;transition:all var(--fab-duration) var(--fab-ease);padding:4px 12px}.knowledge-graph__prompt-chip:hover{background:var(--fab-bg-hover);color:var(--fab-text-0);border-color:var(--fab-shield-blue)}.knowledge-graph__stage-header{justify-content:space-between;align-items:flex-start;gap:var(--fab-space-4);margin-bottom:var(--fab-space-3);flex-wrap:wrap;display:flex}.knowledge-graph__stage-copy{flex-direction:column;gap:4px;min-width:0;display:flex}.knowledge-graph__stage-meta{gap:var(--fab-space-3);color:var(--fab-text-2);flex-wrap:wrap;font-size:11px;display:flex}.knowledge-graph__toolbar{gap:var(--fab-space-2);flex-wrap:wrap;display:flex}.knowledge-graph__toolbar-button{font-size:var(--fab-fs-xs);padding:6px 12px}.knowledge-graph__toolbar-button--icon{justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:inline-flex}.knowledge-graph__toolbar-button--icon svg{width:16px;height:16px}.knowledge-graph__zoom-button{font-size:var(--fab-fs-xs);padding:4px 10px}.knowledge-graph__zoom-label{font-family:var(--fab-font-mono);font-size:var(--fab-fs-xs);color:var(--fab-text-1);text-align:center;min-width:44px}.knowledge-graph__reset-button{font-size:var(--fab-fs-xs);padding:4px 10px}.knowledge-graph__workspace{gap:var(--fab-space-4);grid-template-columns:1fr;min-height:60vh;display:grid}.knowledge-graph__stage{min-height:70vh;padding:var(--fab-space-4);flex-direction:column;margin-bottom:0;display:flex;overflow:hidden}.knowledge-graph__canvas-shell{background:var(--fab-bg-0);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);cursor:grab;flex:1;position:relative;overflow:hidden}.knowledge-graph__canvas-shell--panning{cursor:grabbing}.knowledge-graph__canvas-frame{transform-origin:0 0;position:relative}.knowledge-graph__canvas{width:100%;height:100%;display:block}.knowledge-graph__canvas-node{fill:var(--fab-bg-2);stroke:var(--fab-shield-blue);stroke-width:1.5px;transition:fill .18s,stroke .18s,stroke-width .18s,opacity .18s}.knowledge-graph__canvas-node-group{cursor:pointer}.knowledge-graph__canvas-node-group:hover .knowledge-graph__canvas-node{fill:var(--fab-bg-3);stroke:var(--fab-shield-light);stroke-width:2px}.knowledge-graph__canvas-node--active{fill:#2d72d22e;stroke:var(--fab-shield-blue);stroke-width:2.5px;filter:drop-shadow(0 0 6px #2d72d280)}.knowledge-graph__canvas-node--highlighted{stroke:var(--knowledge-graph-depth-color,var(--fab-gold));stroke-width:2px}.knowledge-graph__canvas-node--dimmed{opacity:.28}.knowledge-graph__canvas-node-group--dragging{cursor:grabbing}.knowledge-graph__canvas-node-group--dragging .knowledge-graph__canvas-node{filter:drop-shadow(0 6px 16px #00000080)}.knowledge-graph__canvas-kind{font-family:var(--fab-font-sans);letter-spacing:.05em;text-transform:uppercase;fill:var(--fab-text-2);-webkit-user-select:none;user-select:none;pointer-events:none;font-size:10px;font-weight:600}.knowledge-graph__canvas-label{font-family:var(--fab-font-sans);fill:var(--fab-text-0);-webkit-user-select:none;user-select:none;pointer-events:none;font-size:13px;font-weight:600}.knowledge-graph__canvas-subtitle{font-family:var(--fab-font-mono);fill:var(--fab-text-2);-webkit-user-select:none;user-select:none;pointer-events:none;font-size:11px}.knowledge-graph__canvas-edge{stroke:var(--fab-border-light);stroke-width:1px;fill:none;transition:stroke .18s,stroke-width .18s,opacity .18s}.knowledge-graph__canvas-edge--active{stroke:var(--fab-shield-blue);stroke-width:1.75px}.knowledge-graph__canvas-edge--highlighted{stroke:var(--knowledge-graph-depth-color,var(--fab-gold));stroke-width:1.5px}.knowledge-graph__canvas-edge--dimmed{opacity:.16}.knowledge-graph__canvas-edge-label{font-family:var(--fab-font-sans);fill:var(--fab-text-2);text-anchor:middle;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:10px}.knowledge-graph__canvas-edge-label--highlighted{fill:var(--knowledge-graph-depth-color,var(--fab-gold))}.knowledge-graph__taskpane{gap:var(--fab-space-3);padding:var(--fab-space-4);top:var(--fab-space-4);max-height:calc(100vh - var(--fab-space-8));flex-direction:column;align-self:start;margin-bottom:0;display:flex;position:sticky;overflow-y:auto}.knowledge-graph__taskpane-header{padding-bottom:var(--fab-space-3);border-bottom:1px solid var(--fab-border);justify-content:space-between;align-items:center;margin-bottom:0;display:flex}@media (width<=1180px){.knowledge-graph__workspace{grid-template-columns:1fr}.knowledge-graph__taskpane{max-height:none;position:static}}.secrets-admin-layout{gap:var(--fab-space-4);grid-template-columns:280px 1fr;display:grid}.secrets-admin-card{background:var(--fab-bg-card);border:1px solid var(--fab-border);border-radius:var(--fab-radius-lg);padding:var(--fab-space-4)}.secrets-row--active{background:#2d72d214}.secrets-table-select{color:var(--fab-text-0);cursor:pointer;text-align:left;font-size:var(--fab-fs-sm);background:0 0;border:none;padding:0}.secrets-health-strip{gap:var(--fab-space-3);padding:var(--fab-space-3) var(--fab-space-4);background:var(--fab-bg-1);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);margin-bottom:var(--fab-space-3);font-size:var(--fab-fs-sm);flex-wrap:wrap;align-items:center;display:flex}.secrets-health-strip strong{color:var(--fab-text-0)}.admin-table-wrap{overflow-x:auto}.implementation-plans-page{gap:var(--fab-space-5)}.implementation-plan-catalog{gap:var(--fab-space-3);min-height:0;display:grid}.implementation-plan-catalog__sticky{z-index:20;gap:var(--fab-space-3);padding:var(--fab-space-3) 0;background:var(--fab-bg-0);border-bottom:1px solid var(--fab-border);display:grid;position:sticky;top:0}.implementation-plan-catalog__summary{justify-content:space-between;align-items:baseline;gap:var(--fab-space-3);display:flex}.implementation-plan-catalog__summary strong{color:var(--fab-text-0);font-size:var(--fab-fs-md)}.implementation-plan-catalog__summary small{color:var(--fab-text-2);font-size:var(--fab-fs-xs)}.implementation-plan-filters{gap:var(--fab-space-3);grid-template-columns:minmax(260px,1.5fr) repeat(6,minmax(150px,1fr));align-items:end;display:grid}.implementation-plan-filters .field{gap:4px}.implementation-plan-filters .field span{font-size:10px}.implementation-plan-table-wrap{border:1px solid var(--fab-border);border-radius:var(--fab-radius-lg);background:var(--fab-bg-card);width:100%;max-height:calc(100vh - 250px);overflow:auto}.implementation-plan-table{table-layout:fixed;width:100%;min-width:1640px}.implementation-plan-table thead th{z-index:2;background:var(--fab-bg-1);box-shadow:0 1px 0 var(--fab-border);position:sticky;top:0}.implementation-plan-table th:first-child,.implementation-plan-table th:nth-child(2){width:14%}.implementation-plan-table th:nth-child(3){width:11%}.implementation-plan-table th:nth-child(4){width:7%}.implementation-plan-table th:nth-child(5){width:8%}.implementation-plan-table th:nth-child(6){width:38%}.implementation-plan-table th:nth-child(7){width:5%}.implementation-plan-table th:nth-child(8){width:3%}.implementation-plan-table__pipeline{min-width:0}.implementation-plan-table__pipeline .workflow-stage-pipeline{min-width:600px}.implementation-plan-table__pipeline .workflow-stage-pipeline__segment{flex:1 1 0;min-width:112px}.implementation-plan-table__pipeline .workflow-stage-pipeline__connector{margin:14px var(--fab-space-2) 0}.implementation-plan-table__pipeline .workflow-stage-pipeline__step{gap:4px;min-width:92px}.implementation-plan-table__pipeline .workflow-stage-pipeline__node{width:28px;height:28px}.implementation-plan-table__pipeline .workflow-stage-pipeline__copy{gap:2px}.implementation-plan-table__pipeline .workflow-stage-pipeline__copy strong,.implementation-plan-table__pipeline .workflow-stage-pipeline__copy small{font-size:11px}.implementation-plan-row{width:100%}.implementation-plan-row__chips{flex-wrap:wrap;gap:4px;margin-top:2px;display:flex}.implementation-plan-row__chips>span{border:1px solid var(--fab-border);border-radius:var(--fab-radius-sm);background:var(--fab-bg-2);min-width:0;max-width:100%;color:var(--fab-text-2);overflow-wrap:anywhere;padding:2px 6px;font-size:10px;line-height:1.2}.implementation-plan-pipeline{grid-template-columns:repeat(5,minmax(42px,1fr));align-items:start;gap:0;min-width:0;display:grid}.implementation-plan-pipeline__step{min-width:0;color:var(--fab-text-2);justify-items:center;gap:4px;display:grid;position:relative}.implementation-plan-pipeline__step:not(:last-child):after{content:"";background:var(--fab-border-light);height:1px;position:absolute;top:13px;left:calc(50% + 13px);right:calc(13px - 50%)}.implementation-plan-pipeline__node{z-index:1;border:1px solid var(--fab-border-light);background:var(--fab-bg-card);color:currentColor;border-radius:999px;justify-content:center;align-items:center;width:26px;height:26px;display:inline-flex;position:relative}.implementation-plan-pipeline__label{color:currentColor;max-width:64px;font-size:9px;font-weight:var(--fab-fw-semi);text-align:center;overflow-wrap:anywhere;line-height:1.15}.implementation-plan-pipeline__step--done,.implementation-plan-pipeline__step--done:not(:last-child):after{color:var(--fab-success)}.implementation-plan-pipeline__step--done:not(:last-child):after{background:var(--fab-success)}.implementation-plan-pipeline__step--current{color:var(--fab-shield-light)}.implementation-plan-pipeline__step--blocked,.implementation-plan-pipeline__step--blocked:not(:last-child):after{color:var(--fab-critical)}.implementation-plan-pipeline__step--blocked:not(:last-child):after{background:var(--fab-critical)}.implementation-plan-detail-page{gap:var(--fab-space-4);display:grid}.implementation-plan-detail-page__toolbar,.implementation-plan-detail-page__heading{justify-content:space-between;align-items:center;gap:var(--fab-space-3);display:flex}.implementation-plan-detail-page__heading{padding-bottom:var(--fab-space-3);border-bottom:1px solid var(--fab-border)}.implementation-plan-detail-page__heading h2{font-size:var(--fab-fs-xl);margin-top:2px}.implementation-plan-detail-tabs{align-items:center;gap:var(--fab-space-1);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:var(--fab-bg-1);padding:3px;display:inline-flex}.implementation-plan-detail-table{margin-top:var(--fab-space-3)}.implementation-plan-work-item-row--expanded td{border-bottom-color:#0000}.implementation-plan-criteria-toggle{max-width:100%;color:var(--fab-shield-light);font:inherit;cursor:pointer;background:#2d72d229;border:1px solid #2d72d247;border-radius:999px;align-items:center;gap:6px;padding:4px 8px;font-size:12px;font-weight:650;line-height:1.25;display:inline-flex}.implementation-plan-criteria-toggle:hover{color:var(--fab-text-0);background:#2d72d23d;border-color:#4280d77a}.implementation-plan-criteria-toggle:disabled{opacity:.55;cursor:not-allowed}.implementation-plan-criteria-row>td{background:color-mix(in srgb, var(--fab-bg-2) 72%, transparent);padding-top:0}.implementation-plan-criteria-panel{margin:0 0 var(--fab-space-2) 12px;padding:var(--fab-space-3);border-radius:var(--fab-radius-sm);background:color-mix(in srgb, var(--fab-bg-card) 86%, transparent);border-left:2px solid #4280d780}.implementation-plan-criteria-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.implementation-plan-criterion-card{border:1px solid var(--fab-border);border-radius:var(--fab-radius-sm);background:color-mix(in srgb, var(--fab-bg-1) 76%, transparent);color:var(--fab-text-1);gap:8px;padding:10px;display:grid}.implementation-plan-criterion-card__heading{grid-template-columns:24px minmax(0,1fr) max-content;align-items:center;gap:10px;display:grid}.implementation-plan-criterion-card__heading strong{color:var(--fab-text-0);font-size:var(--fab-fs-sm)}.implementation-plan-criterion-card p{color:var(--fab-text-1);font-size:var(--fab-fs-xs);margin:0;line-height:1.45}.implementation-plan-criterion-card__meta{color:var(--fab-text-2);flex-wrap:wrap;gap:8px;font-size:11px;display:flex}.implementation-plan-criteria-index{border:1px solid var(--fab-border);background:var(--fab-bg-1);width:22px;height:22px;color:var(--fab-text-2);border-radius:999px;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:inline-flex}.implementation-plan-artifact-list{flex-wrap:wrap;gap:6px;display:flex}.implementation-plan-artifact-chip{border:1px solid var(--fab-border);background:var(--fab-bg-2);max-width:100%;min-height:24px;color:var(--fab-text-1);overflow-wrap:anywhere;border-radius:999px;align-items:center;gap:5px;padding:3px 7px;font-size:11px;display:inline-flex}.implementation-plan-artifact-chip a{color:inherit}.implementation-plan-work-item-audit{margin-top:var(--fab-space-3);padding-top:var(--fab-space-3);border-top:1px solid var(--fab-border);gap:6px;display:grid}.implementation-plan-work-item-audit strong{color:var(--fab-text-0);font-size:var(--fab-fs-sm)}.implementation-plan-work-item-audit p{color:var(--fab-text-1);font-size:var(--fab-fs-xs);grid-template-columns:160px minmax(0,1fr);gap:8px;margin:0;display:grid}.implementation-plan-work-item-audit span{color:var(--fab-text-2)}.implementation-plan-summary-grid{margin:var(--fab-space-4) 0;border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0;display:grid;overflow:hidden}.implementation-plan-summary-grid--compact{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:0}.implementation-plan-summary-grid>div{min-width:0;padding:var(--fab-space-3);border-right:1px solid var(--fab-border);border-bottom:1px solid var(--fab-border)}.implementation-plan-summary-grid dt{color:var(--fab-text-2);letter-spacing:0;text-transform:uppercase;font-size:10px;font-weight:700}.implementation-plan-summary-grid dd{color:var(--fab-text-0);font-size:var(--fab-fs-sm);overflow-wrap:anywhere;margin:4px 0 0;font-weight:700}.implementation-functional-plan{gap:22px;display:grid}.implementation-functional-plan__hero{border:1px solid var(--fab-border);border-left:3px solid var(--fab-shield-blue);background:color-mix(in srgb, var(--fab-bg-2) 92%, var(--fab-shield-blue) 8%);border-radius:12px;max-width:1080px;padding:22px}.implementation-functional-plan__hero h3{max-width:900px;margin:8px 0 12px;font-size:clamp(1.25rem,2vw,1.8rem);line-height:1.25}.implementation-functional-plan__columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.implementation-functional-plan__columns article,.implementation-functional-plan__section{border:1px solid var(--fab-border);background:var(--fab-bg-2);border-radius:10px;padding:16px}.implementation-functional-plan__columns h3,.implementation-functional-plan__section h4{margin:0 0 10px}.implementation-functional-plan ul,.implementation-functional-plan ol{gap:8px;margin:10px 0 0;padding-left:22px;display:grid}.implementation-functional-plan__section li span,.implementation-functional-plan__section li small{color:var(--fab-text-1);margin-top:4px;display:block}@media (width<=980px){.implementation-functional-plan__columns{grid-template-columns:1fr}}.tooltip-rich-content{gap:7px;line-height:1.4;display:grid}.tooltip-rich-content strong{color:var(--fab-text-0);font-size:var(--fab-fs-sm)}.tooltip-rich-content span{color:var(--fab-text-1);font-size:var(--fab-fs-xs)}.tooltip-rich-content dl{gap:4px;margin:0;display:grid}.tooltip-rich-content dl>div{gap:var(--fab-space-2);grid-template-columns:80px minmax(0,1fr);display:grid}.tooltip-rich-content dt{color:var(--fab-gold);font-size:9px;font-weight:var(--fab-fw-bold);text-transform:uppercase}.tooltip-rich-content dd{color:var(--fab-text-1);font-size:var(--fab-fs-xs);overflow-wrap:anywhere;margin:0}@media (width<=1180px){.conversation-layout,.secrets-admin-layout{grid-template-columns:1fr}.conversation-secure-grid,.settings-grid,.content-grid--balanced{grid-template-columns:repeat(2,minmax(0,1fr))}.content-grid{grid-template-columns:1fr}}@media (width<=980px){.app-shell,.app-frame{grid-template-columns:1fr}.sidebar,.app-sidebar{height:auto;position:static}.app-shell__content{padding:var(--fab-space-4)}}@media (width<=720px){.stats-grid,.metric-grid,.workspace-summary,.catalog-grid,.form-grid,.settings-grid,.content-grid--balanced,.conversation-secure-grid,.conversation-context-grid,.workflow-schedule-row,.workflow-manual-grid,.workflow-history-filters,.project-policy-filters,.workflow-output-two-column,.workflow-insight-graph__tables,.implementation-plan-filters,.mirror-workflow-run-list__header,.mirror-workflow-run-row,.mirror-status-evidence-history__facts,.mirror-status-evidence-history__charts,.admin-provider-control-panel__body,.project-policy-group summary{grid-template-columns:1fr}.project-policy-group__meta{justify-content:flex-start}.workflow-output-filter-bar{grid-template-columns:1fr}.workflow-output-filter-count{justify-self:start}.workflow-insight-graph__summary{display:grid}.workflow-insight-graph__badges{justify-content:flex-start}.workflow-json-tree li{grid-template-columns:1fr}.workflow-output-tab{flex:140px}.repo-row,.project-card__metrics{grid-template-columns:1fr}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:.5;transform:scale(.95)}50%{opacity:1;transform:scale(1)}}.resource-grid-compare__wrap{border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:var(--fab-bg-card);width:100%;overflow-x:auto}.resource-grid-compare{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--fab-fs-xs);table-layout:auto;min-width:720px}.resource-grid-compare thead th{top:var(--resource-grid-compare-sticky-top,0);background:var(--fab-bg-1);z-index:4;padding:var(--fab-space-2) var(--fab-space-3);text-align:left;font-size:10px;font-weight:var(--fab-fw-semi);color:var(--fab-text-2);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--fab-border);white-space:nowrap;position:sticky}.resource-grid-compare__corner{background:var(--fab-bg-1);border-right:1px solid var(--fab-border);vertical-align:bottom;min-width:200px;position:sticky;left:0;z-index:6!important}.resource-grid-compare__resource{border-left:1px solid var(--fab-border);padding:var(--fab-space-2) var(--fab-space-3);text-align:center!important}.resource-grid-compare__resource .eyebrow{margin-bottom:2px;display:block}.resource-grid-compare__resource strong{font-size:var(--fab-fs-sm);color:var(--fab-text-0);font-weight:var(--fab-fw-semi);text-transform:none;letter-spacing:0;margin:2px 0;display:block}.resource-grid-compare__resource small{color:var(--fab-text-muted);font-size:10px;font-weight:var(--fab-fw-normal);text-transform:none;letter-spacing:0;display:block}.resource-grid-compare__source-head{font-family:var(--fab-font-mono);border-left:1px solid var(--fab-border);text-align:center!important;letter-spacing:.04em!important;background:var(--fab-bg-2)!important;z-index:3!important;padding:4px 8px!important;font-size:10px!important}.resource-grid-compare__source-head--group-end{border-right:1px solid var(--fab-border)}.resource-grid-compare tbody tr:nth-child(2n) td{background:#ffffff04}.resource-grid-compare tbody tr:hover td{background:var(--fab-bg-hover)}.resource-grid-compare__feature{background:var(--fab-bg-card);z-index:3;padding:var(--fab-space-2) var(--fab-space-3);font-weight:var(--fab-fw-medium);color:var(--fab-text-1);border-right:1px solid var(--fab-border);border-bottom:1px solid var(--fab-border);text-align:left;white-space:nowrap;position:sticky;left:0}.resource-grid-compare__feature-label{font-weight:var(--fab-fw-semi);color:var(--fab-text-0)}.resource-grid-compare tbody tr:hover .resource-grid-compare__feature{background:var(--fab-bg-hover)}.resource-grid-compare__cell{text-align:center;vertical-align:middle;border-left:1px solid var(--fab-border);border-bottom:1px solid var(--fab-border);cursor:help;padding:6px 8px;position:relative}.resource-grid-compare__cell--group-end{border-right:1px solid var(--fab-border)}.resource-grid-compare__value{min-width:16px;display:inline-block}.resource-grid-compare__marker{cursor:pointer;width:28px;height:28px;transition:transform var(--fab-duration) var(--fab-ease), box-shadow var(--fab-duration) var(--fab-ease);background:0 0;border:1px solid #0000;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.resource-grid-compare__marker:hover{transform:scale(1.1)}.resource-grid-compare__marker:focus-visible{outline:2px solid var(--fab-shield-blue);outline-offset:2px}.resource-grid-compare__marker--match{color:#61d190;background:#34b26826;border-color:#34b26859}.resource-grid-compare__marker--conflict{color:#e96363;background:#d22d2d26;border-color:#d22d2d59}.resource-grid-compare__marker--unknown{color:#ebc247;background:#e6b31a26;border-color:#e6b31a59}.resource-grid-compare__marker--unavailable{color:var(--fab-text-muted);background:#ffffff0a}.resource-grid-compare__popup{z-index:10;min-width:220px;max-width:320px;padding:var(--fab-space-3);background:var(--fab-bg-3);border:1px solid var(--fab-border-light);border-radius:var(--fab-radius-md);box-shadow:var(--fab-shadow-md);white-space:normal;font-size:var(--fab-fs-xs);text-align:left;pointer-events:none;flex-direction:column;gap:4px;display:none;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.resource-grid-compare__cell:hover .resource-grid-compare__popup,.resource-grid-compare__cell:focus-within .resource-grid-compare__popup{display:flex}.resource-grid-compare__popup-kicker{text-transform:uppercase;letter-spacing:.06em;color:var(--fab-text-muted);font-size:10px}.resource-grid-compare__popup-copy{color:var(--fab-text-0)}.resource-grid-compare__popup-status{color:var(--fab-text-1)}.resource-grid-compare__popup-meta{color:var(--fab-text-2);font-size:10px}.resource-grid-compare__popup{display:none!important}.resource-cell-modal{gap:var(--fab-space-4);flex-direction:column;display:flex}.resource-cell-modal__head{align-items:center;gap:var(--fab-space-3);padding-bottom:var(--fab-space-3);border-bottom:1px solid var(--fab-border);display:flex}.resource-cell-modal__head .resource-grid-compare__marker{cursor:default;width:40px;height:40px}.resource-cell-modal__head .resource-grid-compare__marker svg{width:22px;height:22px}.resource-cell-modal__head-copy{flex-direction:column;gap:2px;display:flex}.resource-cell-modal__head-copy strong{font-size:var(--fab-fs-md);color:var(--fab-text-0)}.resource-cell-modal__head-copy small{color:var(--fab-text-2);font-size:var(--fab-fs-xs)}.resource-cell-modal__list{gap:var(--fab-space-2) var(--fab-space-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:0;padding:0;display:grid}.resource-cell-modal__list>div{flex-direction:column;gap:2px;display:flex}.resource-cell-modal__list dt{text-transform:uppercase;letter-spacing:.06em;color:var(--fab-text-muted);font-size:10px}.resource-cell-modal__list dd{font-size:var(--fab-fs-sm);color:var(--fab-text-0);word-break:break-word;margin:0}.resource-cell-modal__section{gap:var(--fab-space-1);flex-direction:column;display:flex}.resource-cell-modal__section h3{text-transform:uppercase;letter-spacing:.06em;color:var(--fab-text-muted);font-size:10px;font-weight:var(--fab-fw-semi);margin:0}.resource-cell-modal__section p{font-size:var(--fab-fs-sm);color:var(--fab-text-1);line-height:var(--fab-lh-normal);margin:0}.resource-cell-modal__evidence{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.resource-cell-modal__evidence li{background:var(--fab-bg-1);border:1px solid var(--fab-border);border-radius:var(--fab-radius-sm);font-family:var(--fab-font-mono);color:var(--fab-text-1);word-break:break-word;padding:6px 10px;font-size:11px}.conversation-dock{height:100vh;width:var(--fab-dock-current-w,var(--fab-dock-w));background:var(--fab-bg-1);border-left:1px solid var(--fab-border);isolation:isolate;grid-template-rows:auto auto minmax(0,1fr) auto;min-width:0;max-width:100%;min-height:0;display:grid;position:sticky;top:0;overflow:hidden}.conversation-dock--collapsed{display:none}.conversation-dock--maximized{width:100%;max-width:none}.app-frame--chat-maximized .conversation-dock{border-left:none;width:100vw}.conversation-dock__resize-handle{cursor:col-resize;z-index:2;width:10px;position:absolute;inset:0 auto 0 -4px}.conversation-dock__resize-handle:before{content:"";width:2px;transition:background var(--fab-duration) var(--fab-ease);background:0 0;position:absolute;top:0;bottom:0;left:4px}.conversation-dock:hover .conversation-dock__resize-handle:before,.conversation-dock--resizing .conversation-dock__resize-handle:before{background:#2d72d28c}.app-frame--chat-maximized .conversation-dock__resize-handle{display:none}.conversation-dock__header{padding:var(--fab-space-3) var(--fab-space-4);border-bottom:1px solid var(--fab-border);background:linear-gradient(#1b212cfa,#171c26f5);justify-content:space-between;align-items:center;display:flex}.conversation-dock__heading{align-items:center;gap:var(--fab-space-2);font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-semi);color:var(--fab-text-0);letter-spacing:.04em;text-transform:uppercase;display:flex}.conversation-dock__actions{gap:2px;display:flex}.conversation-dock__mode-switcher{padding:var(--fab-space-2) var(--fab-space-4);border-bottom:1px solid var(--fab-border);background:#14181ff0;align-items:center;gap:6px;display:flex;overflow-x:auto}.conversation-dock__mode-chip{border-radius:var(--fab-radius-full);border:1px solid var(--fab-border);color:var(--fab-text-2);font-size:11px;font-weight:var(--fab-fw-semi);background:0 0;flex:none;padding:6px 10px}.conversation-dock__mode-chip--active{color:var(--fab-text-0);background:#2d72d224;border-color:#2d72d257}.conversation-dock__provider-strip{padding:8px var(--fab-space-4);border-bottom:1px solid var(--fab-border);background:#14181ff0;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;display:grid}.conversation-dock__provider-strip label{color:var(--fab-text-muted);font-size:10px;font-weight:var(--fab-fw-semi);text-transform:uppercase}.conversation-dock__provider-strip select{border:1px solid var(--fab-border);border-radius:var(--fab-radius-sm);background:var(--fab-bg-0);width:100%;min-width:0;color:var(--fab-text-0);padding:6px 8px;font-size:12px}.conversation-dock__provider-strip select:focus{border-color:var(--fab-shield-blue);outline:none;box-shadow:0 0 0 3px #2d72d226}.conversation-dock__provider-strip--composer{opacity:.82;background:0 0;border-bottom:0;grid-template-columns:auto minmax(132px,220px);justify-content:end;align-self:flex-end;gap:6px;padding:0}.conversation-dock__provider-strip--composer label{letter-spacing:0;font-size:9px}.conversation-dock__provider-strip--composer select{min-height:26px;color:var(--fab-text-2);background:#111318b8;border-color:#434d60b8;padding:3px 7px;font-size:11px}.conversation-dock__transcript{min-height:0;padding:var(--fab-space-3) var(--fab-space-4);gap:var(--fab-space-2);background:radial-gradient(circle at top,#2d72d214,#0000 34%),linear-gradient(#161a23f5,#11151c);flex-direction:column;display:flex;overflow-y:auto}.conversation-dock__empty{justify-content:center;align-items:center;gap:var(--fab-space-3);color:var(--fab-text-muted);padding:var(--fab-space-8) var(--fab-space-4);text-align:center;font-size:var(--fab-fs-sm);flex-direction:column;display:flex}.conversation-dock__empty svg{opacity:.4}.conversation-dock__empty kbd{font-family:var(--fab-font-mono);background:var(--fab-bg-3);border:1px solid var(--fab-border-light);border-radius:var(--fab-radius-sm);color:var(--fab-text-1);margin:0 2px;padding:1px 6px;font-size:10px;display:inline-block}.conversation-dock__example-row{margin-top:var(--fab-space-2);flex-wrap:wrap;justify-content:center;gap:4px;display:flex}.conversation-dock__example{font-size:var(--fab-fs-xs);background:var(--fab-bg-2);border:1px solid var(--fab-border);border-radius:var(--fab-radius-full);color:var(--fab-text-1);cursor:pointer;transition:all var(--fab-duration) var(--fab-ease);padding:4px 10px}.conversation-dock__example:hover{background:var(--fab-bg-hover);color:var(--fab-text-0);border-color:var(--fab-shield-blue)}.conversation-dock__typing{padding:var(--fab-space-2) var(--fab-space-3);color:var(--fab-text-2);font-size:var(--fab-fs-xs);align-items:center;gap:4px;display:flex}.conversation-dock__typing span{background:var(--fab-shield-blue);opacity:.6;width:6px;height:6px;animation:fab-pulse 1.2s var(--fab-ease) infinite;border-radius:50%}.conversation-dock__typing span:nth-child(2){animation-delay:.2s}.conversation-dock__typing span:nth-child(3){animation-delay:.4s}.conversation-dock__typing small{margin-left:4px}.conversation-dock__message{border:1px solid var(--fab-border);background:var(--fab-bg-2);width:min(92%,420px);box-shadow:var(--fab-shadow-sm);border-radius:18px;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.conversation-dock__message--operator{background:linear-gradient(#3177d833,#225fb41f);border-color:#3177d857;border-bottom-right-radius:6px;align-self:flex-end}.conversation-dock__message--assistant{background:var(--fab-bg-2);border-color:var(--fab-border-light);border-bottom-left-radius:6px;align-self:flex-start}.conversation-dock__message--system{border-color:var(--fab-border);width:min(96%,460px);color:var(--fab-text-2);background:0 0;align-self:center;font-style:italic}.conversation-dock__message-meta{letter-spacing:.04em;color:var(--fab-text-muted);justify-content:space-between;align-items:center;gap:12px;font-size:10px;display:flex}.conversation-dock__message-meta>span:first-child{font-weight:var(--fab-fw-semi);color:var(--fab-text-1);text-transform:uppercase}.conversation-dock__message--operator .conversation-dock__message-meta>span:first-child{color:#a8cafa}.conversation-dock__message-body{font-family:var(--fab-font-sans);font-size:var(--fab-fs-sm);color:var(--fab-text-0);line-height:var(--fab-lh-normal);white-space:pre-wrap;word-break:break-word;margin:0}.conversation-dock__panel{border:1px solid var(--fab-border-light);width:min(92%,420px);box-shadow:var(--fab-shadow-sm);background:#1e232ffa;border-radius:18px;flex-direction:column;gap:10px;padding:12px;display:flex}.conversation-dock__panel--assistant{border-bottom-left-radius:6px;align-self:flex-start}.conversation-dock__panel-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.conversation-dock__panel-header strong{font-size:var(--fab-fs-sm);color:var(--fab-text-0)}.conversation-dock__panel-header small{color:var(--fab-text-muted);text-transform:uppercase;letter-spacing:.04em}.conversation-dock__panel-copy{color:var(--fab-text-1);font-size:var(--fab-fs-sm);line-height:var(--fab-lh-normal);overflow-wrap:anywhere;word-break:break-word;margin:0}.conversation-dock__summary-list{flex-direction:column;gap:6px;display:flex}.conversation-dock__summary-item,.conversation-dock__slot-static{border:1px solid var(--fab-border);background:#14181fe0;border-radius:12px;justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;padding:8px 10px;display:flex}.conversation-dock__summary-item span,.conversation-dock__slot-static strong{color:var(--fab-text-2);font-size:12px}.conversation-dock__summary-item strong,.conversation-dock__slot-static span{color:var(--fab-text-0);text-align:right;overflow-wrap:anywhere;word-break:break-word;min-width:0}.conversation-dock__slot-list{flex-direction:column;gap:8px;display:flex}.conversation-dock__secure-step{background:#14181fe6;border:1px solid #2d72d22e;border-radius:14px;flex-direction:column;gap:8px;padding:10px;display:flex}.conversation-dock__secret-input{background:var(--fab-bg-0);border:1px solid var(--fab-border);width:100%;color:var(--fab-text-0);border-radius:12px;margin-top:6px;padding:10px 12px}.conversation-dock__secret-input:focus{border-color:var(--fab-shield-blue);outline:none;box-shadow:0 0 0 3px #2d72d226}.conversation-dock__secure-step small{color:var(--fab-text-2);font-size:12px}.conversation-dock__secure-actions,.conversation-dock__draft-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.conversation-dock__composer{gap:var(--fab-space-2);padding:var(--fab-space-3) var(--fab-space-4);border-top:1px solid var(--fab-border);background:linear-gradient(#161a22fa,#14181f);flex-direction:column;display:flex}.conversation-dock__suggestions{background:var(--fab-bg-2);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);padding:var(--fab-space-1);flex-direction:column;gap:2px;max-height:160px;display:flex;overflow-y:auto}.conversation-dock__suggestion{text-align:left;border-radius:var(--fab-radius-sm);color:var(--fab-text-0);cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:flex-start;gap:2px;padding:6px 10px;display:flex}.conversation-dock__suggestion:hover{background:var(--fab-bg-hover)}.conversation-dock__suggestion>span{font-size:var(--fab-fs-xs);color:var(--fab-text-2)}.conversation-dock__input{resize:none;background:var(--fab-bg-0);border:1px solid var(--fab-border);width:100%;min-height:72px;color:var(--fab-text-0);font-family:var(--fab-font-sans);font-size:var(--fab-fs-sm);border-radius:16px;padding:12px 14px;line-height:1.5}.conversation-dock__input:focus{border-color:var(--fab-shield-blue);outline:none;box-shadow:0 0 0 3px #2d72d226}.conversation-dock__composer-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.conversation-dock__composer-actions small{color:var(--fab-text-muted);font-size:10px}.conversation-dock-launcher{right:var(--fab-space-4);bottom:var(--fab-space-4);background:linear-gradient(135deg, var(--fab-shield-blue), var(--fab-shield-dark));color:#fff;width:48px;height:48px;box-shadow:var(--fab-shadow-md);cursor:pointer;z-index:var(--fab-z-sticky);border:none;border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:fixed}.conversation-dock-launcher:hover{box-shadow:var(--fab-shadow-lg);transform:translateY(-2px)}@media (width<=1280px){.conversation-dock{width:min(100%, var(--fab-dock-current-w,var(--fab-dock-w)));z-index:var(--fab-z-dropdown);box-shadow:var(--fab-shadow-lg);position:fixed;top:0;right:0}.conversation-dock--maximized,.app-frame--chat-maximized .conversation-dock{width:100vw}.conversation-dock__resize-handle{display:none}}.admin-page{gap:var(--fab-space-5);flex-direction:column;width:100%;min-width:0;display:flex}.admin-provider-grid{gap:var(--fab-space-4);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));width:100%;display:grid}.admin-provider-control-panel{margin-bottom:0}.admin-provider-control-panel__body{gap:var(--fab-space-3);grid-template-columns:minmax(240px,360px) minmax(0,1fr);align-items:end;display:grid}.admin-provider-control-panel__project{min-width:0}.admin-provider-card{gap:var(--fab-space-2);transition:border-color var(--fab-duration) var(--fab-ease), box-shadow var(--fab-duration) var(--fab-ease);flex-direction:column;margin-bottom:0;display:flex}.admin-provider-card:hover{border-color:var(--fab-border-light)}.admin-provider-card--active{border-color:#2d8652;box-shadow:0 0 12px #34b2681a}.admin-provider-card--default{border-color:var(--fab-shield-blue);box-shadow:0 0 0 1px #2d72d23d,0 0 18px #2d72d21f}.admin-provider-card .section-card__header{margin-bottom:var(--fab-space-2)}.admin-provider-card__badges,.admin-provider-card__actions{gap:var(--fab-space-2);flex-wrap:wrap;justify-content:flex-end;align-items:center;display:flex}.admin-provider-card__footer{justify-content:space-between;gap:var(--fab-space-3);align-items:flex-end;margin-top:auto;display:flex}.admin-provider-card__footer small{color:var(--fab-text-2);font-size:var(--fab-fs-xs);line-height:var(--fab-lh-normal);min-width:0}.admin-provider-config-panel{scroll-margin-top:var(--fab-space-5)}.admin-provider-config-panel:focus{outline:1px solid var(--fab-shield-blue);outline-offset:3px}.settings-ai-provider-grid{margin-bottom:var(--fab-space-4);grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.settings-ai-config-panel{background:var(--fab-bg-1);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);margin-bottom:var(--fab-space-4);padding:var(--fab-space-4)}.admin-table-wrap{width:100%;overflow-x:auto}.admin-form-grid--compact{gap:var(--fab-space-2) var(--fab-space-3)}.admin-form-grid--compact .field textarea{min-height:4rem}.admin-crud-table{width:100%}.admin-toolbar{gap:var(--fab-space-2);margin-bottom:var(--fab-space-3);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.admin-detail-stack{gap:var(--fab-space-3);flex-direction:column;display:flex}.admin-detail-panel{background:var(--fab-bg-1);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);padding:var(--fab-space-4)}.expand-chevron{transition:transform .2s var(--fab-ease);color:var(--fab-text-2);justify-content:center;align-items:center;display:inline-flex}.expand-chevron--open{transform:rotate(90deg)}.row--expanded{background:var(--fab-bg-hover)}.expanded-keys-row>td{background:var(--fab-bg-1);border-top:none}.expanded-keys-container{border-left:3px solid var(--fab-shield-blue);margin:0 0 0 var(--fab-space-3);padding:var(--fab-space-2) 0}.data-table--nested{font-size:var(--fab-fs-xs);background:0 0}.data-table--nested th{color:var(--fab-text-muted);font-weight:var(--fab-fw-medium);font-size:var(--fab-fs-xs);padding:6px 10px}.data-table--nested td{padding:6px 10px}.invocation-history-modal{gap:var(--fab-space-3);flex-direction:column;display:flex}.invocation-history-controls{justify-content:space-between;align-items:center;gap:var(--fab-space-2);flex-wrap:wrap;display:flex}.invocation-history-summary{gap:var(--fab-space-2);display:flex}.invocation-stat-pill{border-radius:var(--fab-radius-full);font-size:var(--fab-fs-xs);font-weight:var(--fab-fw-medium);align-items:center;gap:4px;padding:4px 10px;display:inline-flex}.invocation-stat-pill.success{color:#5cd68f;background:#29a35c26}.invocation-stat-pill.error{color:#d65c5c;background:#a3292926}.invocation-days-toggle{gap:4px;display:flex}.invocation-chart-legend{gap:var(--fab-space-3);font-size:var(--fab-fs-xs);color:var(--fab-text-2);padding:0 var(--fab-space-2);display:flex}.invocation-legend-item{align-items:center;gap:6px;display:inline-flex}.invocation-legend-swatch{border-radius:2px;width:10px;height:10px;display:inline-block}.invocation-daily-table-container{border:1px solid var(--fab-border);border-radius:var(--fab-radius-sm);max-height:240px;overflow-y:auto}.invocation-chart-scroll{border:1px solid var(--fab-border);border-radius:var(--fab-radius-sm);background:var(--fab-bg-1);padding:var(--fab-space-2)}.stack-section{width:100%;min-width:0}.stack-list,.stack-list--tight{width:100%}section,article{min-width:0}.app-shell__content>section,.app-shell__content>article,.app-shell__content>div{width:100%;min-width:0}.app-sidebar--collapsed .nav-link,.app-sidebar--collapsed .app-sidebar__toggle,.app-sidebar--collapsed .app-sidebar__signout{justify-content:center;align-items:center}.topbar--collapsed{display:none}.knowledge-graph__workspace--taskpane-collapsed{grid-template-columns:1fr}.knowledge-graph__workspace--taskpane-collapsed .knowledge-graph__taskpane{display:none}body.body--graph-fullscreen .app-shell__content{max-width:none;padding:0}body.body--code-radar-wide .app-shell__content{max-width:none;padding:var(--fab-space-3) var(--fab-space-4)}body.body--implementation-plans-wide .app-shell__content{max-width:none;padding:var(--fab-space-5) var(--fab-space-6)}.code-radar-page{gap:var(--fab-space-3);width:100%}.code-radar-action-tooltip-anchor{display:inline-flex}.code-radar-action-tooltip-anchor>button:disabled{pointer-events:none}.code-radar-toolbar{gap:var(--fab-space-2);flex-wrap:wrap;align-items:center;display:flex}.code-radar-repository-select{flex:320px;min-width:min(100%,260px);margin:0}.code-radar-repository-select select{width:100%}.code-radar-summary-line{align-items:center;gap:var(--fab-space-2);flex-wrap:wrap;flex:999 560px;min-width:min(100%,300px);padding:0;display:flex;overflow:visible}.code-radar-summary-line__item{border:1px solid var(--fab-border);border-radius:var(--fab-radius-sm);min-height:30px;color:var(--fab-text-2);font-size:var(--fab-fs-xs);white-space:nowrap;background:#ffffff05;flex:0 auto;align-items:baseline;gap:5px;padding:4px 8px;display:inline-flex}.code-radar-summary-line__item span{color:var(--fab-text-muted)}.code-radar-summary-line__item strong{color:var(--fab-text-1);font-size:var(--fab-fs-sm);font-weight:var(--fab-fw-medium)}.code-radar-surface-card{min-width:0;margin-bottom:0}.code-radar-workspace{min-height:min(880px,100vh - 160px);display:block}.code-radar-viewer-pane{min-width:0}.code-radar-render-host{background:var(--fab-bg-1);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);min-height:min(900px,100vh - 150px);padding:var(--fab-space-2);overflow:hidden}.code-radar-render-host .radar-view-tabs{border-radius:var(--fab-radius-md)}.code-radar-render-host .radar-layout{height:min(840px,100vh - 205px);min-height:620px}.code-radar-render-host .radar-layout.radar-layout--document-flow{height:auto;min-height:0}.code-radar-render-host .radar-tree-panel{border-radius:var(--fab-radius-md) 0 0 var(--fab-radius-md);width:210px;min-width:190px}.code-radar-render-host .radar-viz-area{border-radius:0 var(--fab-radius-md) var(--fab-radius-md) 0}.code-radar-render-host .radar-matrix-controls{color:var(--fab-text-2);flex-wrap:wrap;align-items:center;gap:8px;padding:8px;font-size:.75rem;display:flex}.code-radar-render-host .radar-matrix-input,.code-radar-render-host select,.code-radar-render-host input[type=text]{background:var(--fab-bg-2);border:1px solid var(--fab-border-light);border-radius:var(--fab-radius-sm);color:var(--fab-text-1);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;min-height:30px;padding:5px 8px}.code-radar-render-host .radar-matrix-input::placeholder,.code-radar-render-host input[type=text]::placeholder{color:var(--fab-text-muted)}.code-radar-render-host option{background:var(--fab-bg-1);color:var(--fab-text-1)}.code-radar-render-host .radar-treemap-cell{border-radius:var(--fab-radius-sm);text-shadow:none;padding:6px 8px;transition:none;background:var(--fab-bg-2)!important;border-color:var(--fab-border-light)!important;box-shadow:none!important;color:var(--fab-text-1)!important}.code-radar-render-host .radar-treemap-cell:hover{transform:none;box-shadow:none!important}.code-radar-render-host .radar-treemap-label{color:var(--fab-text-1);font-weight:var(--fab-fw-medium)}.code-radar-render-host .radar-treemap-sub{color:var(--fab-text-muted)}.code-radar-render-host .radar-tooltip{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:var(--fab-radius-md)}.code-radar-render-host .radar-node,.code-radar-render-host .radar-tree-node circle,.code-radar-render-host .radar-stat-card,.code-radar-render-host .radar-breakdown-item,.code-radar-render-host .radar-pattern,.code-radar-render-host .sast-step,.code-radar-render-host .sast-step-num,.code-radar-render-host .sec-code-preview{transition:none}.code-radar-render-host .radar-node:hover,.code-radar-render-host .radar-tree-node circle:hover,.code-radar-render-host .radar-node--critical,.code-radar-render-host .radar-node--warning{filter:none;animation:none}.code-radar-render-host .radar-health,.code-radar-render-host .radar-stat-card,.code-radar-render-host .radar-breakdown-item,.code-radar-render-host .radar-pattern,.code-radar-render-host .sast-option-card{border-radius:var(--fab-radius-md);box-shadow:none}.code-radar-render-host .radar-ctrl-btn,.code-radar-render-host .sast-fix-btn,.code-radar-render-host .sec-reveal-btn{color:var(--fab-text-1);background:var(--fab-bg-2);border:1px solid var(--fab-border-light);border-radius:var(--fab-radius-sm);box-shadow:none}.code-radar-render-host .radar-inline-icon{vertical-align:-2px;display:inline-block}@media (width<=1180px){.code-radar-toolbar{align-items:stretch}.code-radar-repository-select{flex-basis:min(100%,420px)}.code-radar-summary-line{flex-basis:100%}.code-radar-render-host .radar-layout{height:720px}}.searchable-select{width:100%;position:relative}.searchable-select__trigger{background:var(--fab-bg-2);border:1px solid var(--fab-border-light);width:100%;color:var(--fab-text-1);font-size:var(--fab-fs-sm);cursor:pointer;text-align:left;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex}.searchable-select__trigger:hover:not(:disabled){border-color:var(--fab-shield-blue)}.searchable-select__trigger:focus-visible{outline:2px solid var(--fab-shield-blue);outline-offset:1px}.searchable-select__trigger:disabled{opacity:.6;cursor:not-allowed}.searchable-select__label{flex-direction:column;gap:2px;min-width:0;display:flex;overflow:hidden}.searchable-select__label strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.searchable-select__label small{color:var(--fab-text-2);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.searchable-select__chevron{color:var(--fab-text-2);flex-shrink:0;font-size:12px}.searchable-select__popover{z-index:40;background:var(--fab-bg-1);border:1px solid var(--fab-border-light);box-shadow:var(--fab-shadow-md);border-radius:8px;flex-direction:column;max-height:360px;display:flex;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden}.searchable-select__search{background:var(--fab-bg-2);border:1px solid var(--fab-border-light);color:var(--fab-text-1);font-size:var(--fab-fs-sm);border-radius:6px;margin:8px;padding:8px 10px}.searchable-select__search:focus{border-color:var(--fab-shield-blue);outline:none}.searchable-select__list{padding:0 4px 8px;overflow-y:auto}.searchable-select__empty{color:var(--fab-text-2);font-size:var(--fab-fs-sm);text-align:center;padding:12px}.searchable-select__option{width:100%;color:var(--fab-text-1);font-size:var(--fab-fs-sm);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.searchable-select__option:hover,.searchable-select__option:focus-visible{background:var(--fab-bg-2);outline:none}.searchable-select__option--selected{background:var(--fab-bg-2);border-color:var(--fab-shield-blue)}.searchable-select__option small{color:var(--fab-text-2)}.searchable-select__option code{color:var(--fab-text-2);font-size:var(--fab-fs-xs)}.ds-page__actions{align-items:center;gap:.5rem;display:flex}.ds-page__loading-overlay{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0e121b99;place-items:center;display:grid;position:fixed;inset:0}.ds-catalog-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem;margin-top:1rem;display:grid}.ds-card{background:var(--fab-bg-card);border:1px solid var(--fab-border);border-radius:var(--fab-radius-lg);cursor:pointer;text-align:left;width:100%;font:inherit;color:var(--fab-text-0);flex-direction:column;gap:.625rem;padding:1.25rem;transition:border-color .2s,box-shadow .2s,transform .15s;display:flex}.ds-card:hover{border-color:var(--fab-shield-blue);box-shadow:0 0 0 1px var(--fab-shield-blue), 0 4px 24px #2d72d21a;transform:translateY(-1px)}.ds-card__header{align-items:center;gap:.5rem;display:flex}.ds-card__name{font-size:var(--fab-fs-base);color:var(--fab-text-0);font-weight:600}.ds-card__meta{font-size:var(--fab-fs-xs);color:var(--fab-text-2);flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.ds-card__meta-item{align-items:center;gap:.25rem;display:flex}.ds-card__description{font-size:var(--fab-fs-sm);color:var(--fab-text-1);margin:0;line-height:1.4}.ds-card__footer{font-size:var(--fab-fs-xs);color:var(--fab-text-muted);border-top:1px solid var(--fab-border);align-items:center;gap:.5rem;padding-top:.375rem;display:flex}.ds-card__source{text-transform:capitalize}.ds-card__repo{font-family:var(--fab-font-mono)}.ds-compare-bar{background:var(--fab-bg-2);border:1px solid var(--fab-border);border-radius:var(--fab-radius-lg);align-items:center;gap:.75rem;margin-top:1rem;padding:.75rem 1rem;display:flex}.ds-compare-bar__select{background:var(--fab-bg-1);min-width:0;color:var(--fab-text-0);border:1px solid var(--fab-border);border-radius:var(--fab-radius-sm);font-size:var(--fab-fs-sm);flex:1;padding:.375rem .5rem}.ds-compare-bar__vs{font-size:var(--fab-fs-xs);color:var(--fab-text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.ds-detail__header{margin-bottom:1.5rem}.ds-detail__title-row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.ds-detail__name{font-size:var(--fab-fs-2xl);color:var(--fab-text-0);margin:0;font-weight:700}.ds-detail__version{font-size:var(--fab-fs-sm);color:var(--fab-text-2);font-family:var(--fab-font-mono)}.ds-detail__description{color:var(--fab-text-1);font-size:var(--fab-fs-sm);margin:.5rem 0 0}.ds-detail__actions{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.ds-import-modal{gap:1rem;display:grid}.ds-import-modal__version{border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:var(--fab-bg-2);align-items:center;gap:.75rem;padding:.75rem;display:flex}.ds-import-modal__version span{color:var(--fab-text-2);font-size:var(--fab-fs-xs);text-transform:uppercase;letter-spacing:.05em;gap:.125rem;display:grid}.ds-import-modal__version strong{color:var(--fab-text-0);font-family:var(--fab-font-mono);font-size:var(--fab-fs-sm);text-transform:none;letter-spacing:0}.ds-import-modal__file{color:var(--fab-text-1);font-size:var(--fab-fs-sm);gap:.375rem;font-weight:600;display:grid}.ds-import-modal__file input{border:1px dashed var(--fab-border-hover);border-radius:var(--fab-radius-md);background:var(--fab-bg-1);width:100%;color:var(--fab-text-0);padding:.625rem}.ds-import-modal__file small{color:var(--fab-text-2);font-size:var(--fab-fs-xs);font-weight:400}.ds-import-modal__summary{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.5rem;display:grid}.ds-import-modal__summary div{border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);background:var(--fab-bg-2);gap:.25rem;padding:.625rem;display:grid}.ds-import-modal__summary span{color:var(--fab-text-2);font-size:var(--fab-fs-xs);text-transform:uppercase;letter-spacing:.05em}.ds-import-modal__summary strong,.ds-import-modal__summary code{color:var(--fab-text-0);font-family:var(--fab-font-mono);font-size:var(--fab-fs-sm);overflow-wrap:anywhere}.ds-import-modal__findings{gap:.5rem;margin:.5rem 0 0;padding-left:1rem;display:grid}.ds-import-modal__findings li{color:var(--fab-text-1)}.ds-import-modal__findings code{color:var(--fab-text-0);font-size:var(--fab-fs-xs);margin-right:.5rem}.ds-import-modal__ack{align-items:flex-start}.ds-import-modal__actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;padding-top:.25rem;display:flex}.ds-detail__section{margin-bottom:2rem}.ds-detail__section h3{font-size:var(--fab-fs-lg);color:var(--fab-text-0);border-bottom:1px solid var(--fab-border);align-items:center;gap:.5rem;margin:0 0 1rem;padding-bottom:.5rem;font-weight:600;display:flex}.ds-palette-grid{flex-direction:column;gap:1.5rem;display:flex}.ds-palette-group__title{font-size:var(--fab-fs-sm);color:var(--fab-text-1);text-transform:capitalize;margin:0 0 .5rem;font-weight:600}.ds-palette-group__swatches{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem;display:grid}.ds-color-swatch{background:var(--fab-bg-2);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);flex-direction:column;gap:.375rem;padding:.375rem;transition:border-color .15s;display:flex}.ds-color-swatch:hover{border-color:var(--fab-border-hover)}.ds-color-swatch__chip{border-radius:var(--fab-radius-sm);border:1px solid #ffffff0f;width:100%;height:48px}.ds-color-swatch__label{flex-direction:column;gap:.125rem;padding:0 .125rem;display:flex}.ds-color-swatch__name{font-size:var(--fab-fs-xs);color:var(--fab-text-0);word-break:break-all;font-weight:500}.ds-color-swatch__value{font-size:.625rem;font-family:var(--fab-font-mono);color:var(--fab-text-2)}.ds-typography{flex-direction:column;gap:1rem;display:flex}.ds-typography__specimen{background:var(--fab-bg-2);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);flex-direction:column;gap:.25rem;padding:.75rem;display:flex}.ds-typography__label{font-size:var(--fab-fs-xs);color:var(--fab-text-2);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.ds-typography__sample{font-size:var(--fab-fs-lg);color:var(--fab-text-0);line-height:1.5}.ds-token-table{margin-bottom:1rem}.ds-token-table__title{font-size:var(--fab-fs-sm);color:var(--fab-text-1);margin:0 0 .5rem;font-weight:600}.ds-muted{color:var(--fab-text-muted);font-size:var(--fab-fs-sm)}.ds-compact-list{color:var(--fab-text-1);font-size:var(--fab-fs-xs);margin:0;padding-left:1rem;line-height:1.45}.ds-standard-table td{vertical-align:top}.ds-standard-table__description{color:var(--fab-text-2);font-size:var(--fab-fs-xs);margin-top:.25rem;line-height:1.4;display:block}.ds-pattern-list{flex-direction:column;gap:.75rem;display:flex}.ds-pattern-list--two{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));display:grid}.ds-pattern-row{background:var(--fab-bg-2);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);grid-template-columns:minmax(150px,.8fr) minmax(180px,1fr) minmax(220px,1.2fr) minmax(180px,1fr);gap:.75rem;padding:.75rem;display:grid}.ds-pattern-row--stacked{flex-direction:column;display:flex}.ds-pattern-row p{color:var(--fab-text-1);font-size:var(--fab-fs-sm);margin:0;line-height:1.45}.ds-pattern-row__title{color:var(--fab-text-0);font-weight:600;font-size:var(--fab-fs-sm)}.ds-pattern-row__meta,.ds-pattern-row__label{color:var(--fab-text-2);font-size:var(--fab-fs-xs)}.ds-pattern-row__label,.ds-governance__label{text-transform:uppercase;letter-spacing:.04em;margin-bottom:.25rem;font-weight:600;display:block}.ds-governance{background:var(--fab-bg-2);border:1px solid var(--fab-border);border-radius:var(--fab-radius-md);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;padding:.75rem;display:grid}.ds-governance strong{color:var(--fab-text-0);font-size:var(--fab-fs-sm)}.ds-governance p{color:var(--fab-text-1);font-size:var(--fab-fs-sm);margin:0;line-height:1.45}.ds-governance__wide{grid-column:1/-1}@media (width<=900px){.ds-pattern-row{grid-template-columns:1fr}}.ds-diff__header{background:var(--fab-bg-2);border:1px solid var(--fab-border);border-radius:var(--fab-radius-lg) var(--fab-radius-lg) 0 0;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.ds-diff__title{font-size:var(--fab-fs-base);color:var(--fab-text-0);font-weight:600}.ds-diff__count{font-size:var(--fab-fs-sm);color:var(--fab-text-2)}.ds-diff__section{background:var(--fab-bg-1);border:1px solid var(--fab-border);border-top:none;padding:1rem}.ds-diff__section:last-child{border-radius:0 0 var(--fab-radius-lg) var(--fab-radius-lg)}.ds-diff__section h4{font-size:var(--fab-fs-sm);color:var(--fab-text-1);margin:0 0 .75rem;font-weight:600}.ds-diff__changes{flex-direction:column;gap:.25rem;display:flex}.ds-diff__change{border-radius:var(--fab-radius-sm);font-size:var(--fab-fs-sm);grid-template-columns:2fr auto 1fr 1fr;align-items:center;gap:.5rem;padding:.375rem .625rem;display:grid}.ds-diff__change--added{background:#2eb86714}.ds-diff__change--removed{background:#df3a3a14}.ds-diff__change--modified{background:#e6b03314}.ds-diff__token{font-family:var(--fab-font-mono);color:var(--fab-text-0);font-size:var(--fab-fs-xs)}.ds-diff__arrow{color:var(--fab-text-muted);font-size:var(--fab-fs-xs)}.ds-diff__value{font-family:var(--fab-font-mono);font-size:var(--fab-fs-xs);color:var(--fab-text-1);align-items:center;gap:.375rem;display:flex}.ds-diff__value--empty{color:var(--fab-text-muted)}.ds-diff__color-dot{border:1px solid #ffffff1a;border-radius:3px;flex-shrink:0;width:14px;height:14px;display:inline-block}.ds-empty{color:var(--fab-text-muted);text-align:center;flex-direction:column;grid-column:1/-1;align-items:center;gap:.75rem;padding:3rem 1rem;display:flex}.ds-empty p{margin:0}.ds-empty__hint{font-size:var(--fab-fs-sm);max-width:40ch}.ds-preview-frame{border:1px solid var(--fab-border);border-radius:var(--fab-radius-lg);background:#fff;margin-top:1rem;overflow:hidden}.ds-shadow-host{border-radius:var(--fab-radius-lg);width:100%;min-height:400px}.ds-card__body{cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;background:0 0;border:none;flex-direction:column;gap:.625rem;padding:0;display:flex}.ds-card__preview-btn{background:var(--fab-bg-3);border:1px solid var(--fab-border);border-radius:var(--fab-radius-sm);font-size:var(--fab-fs-xs);color:var(--fab-text-1);cursor:pointer;align-items:center;gap:.25rem;margin-left:auto;padding:.25rem .5rem;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.ds-card__preview-btn:hover{background:var(--fab-bg-hover);border-color:var(--fab-shield-blue);color:var(--fab-text-0)}
