:root{--bg:#f5f6f8;--panel:#fff;--ink:#1b1e24;--muted:#6b7280;--accent:#2563eb;--ok:#16a34a;--warn:#d97706;--bad:#dc2626;--stale:#9333ea;--fact:#15803d;--agg:#ea580c;--dim:#4f46e5;--bridge:#db2777;--slicer:#0d9488;--security:#b91c1c;--config:#64748b;--loader:#7c3aed;--page:#0891b2;--measure:#a16207;--table:#78716c}@media (prefers-color-scheme:dark){:root{--bg:#14161b;--panel:#1e2129;--ink:#e7e9ee;--muted:#9aa1ac;--accent:#5b8def;--ok:#34d17c;--warn:#f0a93d;--bad:#f0564f;--stale:#b57bf0;--fact:#4ade80;--agg:#fb923c;--dim:#818cf8;--bridge:#f472b6;--slicer:#2dd4bf;--security:#f87171;--config:#94a3b8;--loader:#a78bfa;--page:#22d3ee;--measure:#facc15;--table:#a8a29e}}*{box-sizing:border-box}html,body{height:100%;overflow:hidden}body{background:var(--bg);color:var(--ink);margin:0;font:15px/1.5 system-ui,Segoe UI,Roboto,sans-serif}#root{flex-direction:column;height:100dvh;display:flex}a{color:var(--accent)}.app-shell{flex-direction:column;flex:1;min-height:0;display:flex}.app-header{z-index:20;background:var(--panel);border-bottom:1px solid color-mix(in srgb, var(--ink) 12%, transparent);flex-wrap:wrap;flex:none;align-items:center;gap:6px 24px;padding:10px 20px;display:flex;position:sticky;top:0}@media (width<=560px){.app-header{gap:4px 14px;padding:8px 12px}.app-nav{gap:12px}.user-name{display:none}}.app-brand{letter-spacing:.02em;align-items:center;gap:6px;font-weight:600;display:flex}.app-brand-icon{fill:none;width:15px;height:15px;stroke:var(--report-accent);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;flex:none}.app-nav{flex-wrap:wrap;flex:1;gap:16px;display:flex}.app-nav a{color:var(--ink);border-bottom:2px solid #0000;padding:2px 0 4px;font-size:14px;text-decoration:none;display:inline-block}.app-nav a:after{content:attr(data-label);visibility:hidden;height:0;font-weight:600;display:block;overflow:hidden}.app-nav a:hover{color:var(--accent)}.app-nav a[aria-current=page]{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.wh-chip{border:1px solid color-mix(in srgb, var(--accent) 35%, transparent);background:color-mix(in srgb, var(--accent) 8%, transparent);color:var(--ink);border-radius:999px;align-items:center;gap:6px;padding:2px 10px;font-size:12px;text-decoration:none;display:inline-flex}.wh-chip:hover{border-color:var(--accent)}.wh-chip-name{font-weight:600}.wh-chip-count{color:var(--muted);font-variant-numeric:tabular-nums}.user-menu{margin-left:auto;position:relative}.user-menu-btn{cursor:pointer;font:inherit;color:var(--ink);background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:2px 6px;display:inline-flex}.user-menu-btn:hover{background:color-mix(in srgb, var(--ink) 6%, transparent)}.user-menu-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.user-avatar{background:var(--accent);color:#fff;letter-spacing:.02em;border-radius:999px;flex:none;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:700;display:inline-flex}.user-name{font-size:13px}.user-menu-dropdown{z-index:30;border:1px solid color-mix(in srgb, var(--ink) 15%, transparent);background:var(--panel);min-width:220px;box-shadow:0 4px 14px color-mix(in srgb, var(--ink) 18%, transparent);border-radius:8px;flex-direction:column;align-items:flex-start;gap:6px;padding:10px 12px;font-size:13px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.user-menu-identity{margin:0;font-weight:600}.user-menu-login,.user-menu-roles{margin:0;font-size:12px}.user-menu-hint{margin:0;font-size:12px;font-style:italic}.user-menu-signout{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;text-decoration:underline}.user-menu-signout:disabled{color:var(--muted);cursor:default;text-decoration:none}.dev-picker{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;display:flex}.dev-picker label{margin-left:6px}.dev-picker input{border:1px solid color-mix(in srgb, var(--ink) 20%, transparent);background:var(--bg);width:9em;color:var(--ink);border-radius:4px;padding:3px 6px}.dev-picker button{border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;border-radius:4px;padding:4px 10px}.app-main{flex:1;min-height:0;padding:20px;overflow:auto}.page-toolbar{z-index:10;background:var(--bg);align-items:center;gap:14px;margin:0 0 14px;padding:6px 0;display:flex;position:sticky;top:0}.page-title{letter-spacing:.01em;margin:0;font-size:16px;font-weight:650}.panel{background:var(--panel);border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);border-radius:8px;padding:16px 20px}.muted{color:var(--muted)}.registry-link{color:inherit;text-underline-offset:2px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.registry-link:hover{text-decoration-style:solid}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;border-bottom:1px solid color-mix(in srgb, var(--ink) 10%, transparent);padding:6px 10px}th{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.badge{color:#fff;background:var(--muted);border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.badge-ok{background:var(--ok)}.badge-warn{background:var(--warn)}.badge-bad{background:var(--bad)}.badge-stale{background:var(--stale)}.badge-muted{background:var(--muted)}.badge-accent{background:var(--accent)}.badge-fact{background:var(--fact)}.badge-aggregate{background:var(--agg)}.badge-dimension{background:var(--dim)}.badge-bridge{background:var(--bridge)}.badge-slicer{background:var(--slicer)}.badge-security{background:var(--security)}.badge-config{background:var(--config)}.badge-loader{background:var(--loader)}.badge-page{background:var(--page)}.badge-table{background:var(--table)}.object-context-strip{align-items:center;gap:14px;margin:0 0 10px;font-size:13px;display:flex}.object-context-strip a{color:var(--muted)}.object-context-strip a:hover{color:var(--accent)}.context-back-btn{color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:none;padding:0;font-size:13px}.context-back-btn:hover{color:var(--accent)}.object-parent-breadcrumb{margin:0 0 4px;font-size:13px}.object-parent-breadcrumb a{color:var(--muted)}.object-parent-breadcrumb a:hover{color:var(--accent)}.object-header-top{align-items:center;gap:10px;display:flex}.object-header-top h1{margin:0;font-size:20px}.object-natural-key{margin:4px 0;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:13px}.object-badges{gap:8px;margin:8px 0;display:flex}.object-synced{margin:4px 0 0;font-size:12px}.tab-strip{border-bottom:1px solid color-mix(in srgb, var(--ink) 12%, transparent);gap:4px;margin:16px 0 0;display:flex}.tab-button{color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:none;border-bottom:2px solid #0000;padding:8px 14px;font-size:14px}.tab-button:hover{color:var(--ink)}.tab-active{color:var(--ink);border-bottom-color:var(--accent);font-weight:600}.tab-content{border-top-left-radius:0;border-top-right-radius:0}.object-overview{flex-direction:column;gap:20px;display:flex}.undocumented-callout{border:1px solid color-mix(in srgb, var(--warn) 40%, transparent);background:color-mix(in srgb, var(--warn) 12%, var(--panel));color:var(--ink);border-radius:8px;align-items:center;gap:10px;padding:10px 14px;font-size:13px;display:flex}.definition-label{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 8px;font-size:11px;font-weight:600;display:block}.description-panel{flex-direction:column;display:flex}.description-prose{font-size:15px;line-height:1.6}.description-prose .annotation-value{white-space:pre-wrap}.definition-grid{grid-template-columns:1fr;gap:14px;margin:0;display:grid}@media (width>=900px){.definition-grid{grid-template-columns:1fr 1fr}}.definition-cell{margin:0}.definition-value{margin:0;font-size:14px;line-height:1.6}.annotation-editor{flex-direction:column;gap:6px;width:100%;max-width:480px;display:inline-flex}.annotation-editor textarea,.annotation-editor input,.annotation-editor select,.signoff-issue-form textarea{border:1px solid color-mix(in srgb, var(--ink) 20%, transparent);background:var(--bg);width:100%;color:var(--ink);font:inherit;border-radius:4px;padding:6px 8px}.annotation-editor textarea,.signoff-issue-form textarea{min-height:60px}.annotation-hint{margin:0;font-size:12px}.annotation-ghost-btn{border:1px dashed color-mix(in srgb, var(--accent) 50%, transparent);color:var(--accent);cursor:pointer;background:0 0;border-radius:4px;align-self:flex-start;padding:4px 10px;font-size:13px}.annotation-ghost-btn:hover{background:color-mix(in srgb, var(--accent) 8%, transparent)}.annotation-edit-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;margin-left:8px;padding:0;font-size:13px}.annotation-empty{font-style:italic}.inline-error{color:var(--bad);margin:4px 0 0;font-size:13px}.inline-hint,.inline-warning{color:var(--warn);margin:4px 0 0;font-size:13px}.attrs-table{max-width:640px}.signoff-panel{flex-direction:column;gap:10px;display:flex}.signoff-signers{flex-direction:column;gap:4px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.signoff-actions{flex-wrap:wrap;align-items:flex-start;gap:8px;display:flex}.signoff-actions button{border:1px solid color-mix(in srgb, var(--ink) 20%, transparent);background:var(--panel);color:var(--ink);cursor:pointer;border-radius:4px;padding:5px 12px;font-size:13px}.signoff-actions button:hover{border-color:var(--accent);color:var(--accent)}.signoff-issue-form{flex-direction:column;gap:4px;width:100%;max-width:480px;display:flex}.columns-grid-scroll{overflow-x:auto}.columns-grid .sort-header{font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;background:0 0;border:none;padding:0}.columns-grid .sort-header:hover{color:var(--accent)}.columns-grid-ordinal-header,.columns-grid-ordinal{text-align:right;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;width:1%}.columns-grid-description-header{width:40%}.columns-grid-description{-webkit-line-clamp:3;text-overflow:ellipsis;overflow-wrap:break-word;-webkit-box-orient:vertical;line-height:1.5;display:-webkit-box;overflow:hidden}.columns-grid-note{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:220px;font-size:12px;overflow:hidden}.lineage-group{margin-bottom:20px}.lineage-group h3{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 8px;font-size:13px}.lineage-list{flex-direction:column;gap:4px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.lineage-empty{color:var(--muted);margin:0;font-size:14px}.assess-form{flex-direction:column;gap:10px;max-width:480px;margin-top:20px;display:flex}.assess-form h3{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0;font-size:13px}.assess-form label{color:var(--muted);flex-direction:column;gap:4px;font-size:13px;display:flex}.assess-form select,.assess-form input,.assess-form textarea{border:1px solid color-mix(in srgb, var(--ink) 20%, transparent);background:var(--bg);color:var(--ink);font:inherit;border-radius:4px;padding:6px 8px}.assess-form textarea{min-height:60px}.assess-form button{border:1px solid color-mix(in srgb, var(--ink) 20%, transparent);background:var(--panel);color:var(--ink);cursor:pointer;border-radius:4px;align-self:flex-start;padding:5px 12px;font-size:13px}.assess-form button:hover{border-color:var(--accent);color:var(--accent)}.new-thread-form{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px;display:flex}.new-thread-form input[type=text],.new-thread-form input:not([type]){border:1px solid color-mix(in srgb, var(--ink) 20%, transparent);background:var(--bg);min-width:200px;color:var(--ink);font:inherit;border-radius:4px;flex:1;padding:6px 8px}.new-thread-form label{color:var(--muted);align-items:center;gap:4px;font-size:13px;display:flex}.new-thread-form button{border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;border-radius:4px;padding:5px 12px;font-size:13px}.thread-list{flex-direction:column;gap:16px;display:flex}.thread-card{border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);border-radius:6px;padding:12px 14px}.thread-header{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.thread-meta{font-size:12px}.thread-comments{border-left:2px solid color-mix(in srgb, var(--ink) 10%, transparent);flex-direction:column;gap:8px;margin:10px 0 0;padding:0 0 0 12px;font-size:14px;list-style:none;display:flex}.thread-comments p{margin:2px 0 0}.thread-actions{flex-direction:column;gap:6px;margin-top:10px;display:flex}.thread-actions textarea{border:1px solid color-mix(in srgb, var(--ink) 20%, transparent);background:var(--bg);width:100%;min-height:50px;color:var(--ink);font:inherit;border-radius:4px;padding:6px 8px}.thread-actions-buttons{gap:8px;display:flex}.thread-actions-buttons button{border:1px solid color-mix(in srgb, var(--ink) 20%, transparent);background:var(--panel);color:var(--ink);cursor:pointer;border-radius:4px;padding:4px 10px;font-size:13px}.thread-actions-buttons button:hover{border-color:var(--accent);color:var(--accent)}.history-section{margin-bottom:24px}.history-section h3{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 10px;font-size:13px}.revisions-list{flex-direction:column;gap:6px;display:flex}.revision-row{border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);border-radius:6px;padding:8px 12px}.revision-row summary{cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.revision-at{font-size:12px}.revision-diff{grid-template-columns:1fr 1fr;gap:12px;margin-top:10px;display:grid}.revision-diff h4{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 4px;font-size:11px}.revision-diff pre{background:var(--bg);white-space:pre-wrap;word-break:break-word;border-radius:4px;margin:0;padding:8px;font-size:12px;overflow-x:auto}.decision-row{cursor:pointer}.decision-row:hover{background:color-mix(in srgb, var(--accent) 6%, transparent)}.decision-row-expanded td{background:color-mix(in srgb, var(--ink) 4%, transparent)}.decision-text{margin:0 0 6px}.decision-rationale{margin:0}.decision-row-focused{background:color-mix(in srgb, var(--accent) 12%, transparent);outline:2px solid var(--accent)}.decision-register-count{margin:2px 0 0;font-size:13px}.page-toolbar button{margin-left:auto}.decision-register-model-note{margin:0 0 14px;font-size:13px}.decision-register-controls{align-items:center;gap:16px;margin-bottom:10px;display:flex}.decision-register-controls input[type=search]{border:1px solid color-mix(in srgb, var(--ink) 20%, transparent);background:var(--bg);width:280px;color:var(--ink);font:inherit;border-radius:4px;flex:none;padding:6px 8px}.decision-register-toggle{color:var(--muted);cursor:pointer;align-items:center;gap:6px;font-size:13px;display:flex}.decision-register-hidden-note{margin:0 0 10px;font-size:12px}.decision-status-cell{align-items:center;gap:6px;display:flex}.decision-superseded-link{white-space:nowrap;font-size:12px}.decision-drawer-backdrop{z-index:40;background:#00000059;position:fixed;inset:0}.decision-drawer{z-index:41;border-left:1px solid color-mix(in srgb, var(--ink) 10%, transparent);border-radius:0;flex-direction:column;gap:14px;width:460px;max-width:100vw;display:flex;position:fixed;top:0;bottom:0;right:0;overflow-y:auto}.decision-drawer-header{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.decision-drawer-header h2{margin:0;font-size:16px}.decision-drawer-close{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:4px;flex:none;margin:-2px -4px 0 0;padding:2px 6px;font-size:14px;line-height:1.4}.decision-drawer-close:hover{color:var(--ink);background:color-mix(in srgb, var(--ink) 8%, transparent)}.decision-drawer-meta{align-items:center;gap:10px;font-size:13px;display:flex}.decision-drawer-section{flex-direction:column;gap:6px;display:flex}.decision-drawer-chain,.decision-drawer-citations{flex-direction:column;gap:6px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.decision-drawer-chain-current{font-weight:600}.decision-composer-backdrop{z-index:50;background:#00000059;position:fixed;inset:0}.decision-composer{z-index:51;flex-direction:column;gap:10px;width:480px;max-width:calc(100vw - 32px);max-height:calc(100vh - 64px);display:flex;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.decision-composer-header{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.decision-composer-header h2{margin:0;font-size:16px}.decision-composer label{color:var(--muted);flex-direction:column;gap:4px;font-size:13px;display:flex}.decision-composer input,.decision-composer select,.decision-composer textarea{border:1px solid color-mix(in srgb, var(--ink) 20%, transparent);background:var(--bg);color:var(--ink);font:inherit;border-radius:4px;padding:6px 8px}.decision-composer textarea{min-height:60px}.decision-composer-field{flex-direction:column;gap:4px;display:flex}.decision-field-hint{font-size:11px}.decision-composer-locked-supersedes{color:var(--muted);flex-direction:column;gap:4px;font-size:13px;display:flex}.decision-composer-chip{background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--accent);border-radius:999px;align-self:flex-start;padding:3px 8px;font-size:12px}.decision-composer-actions{gap:8px;margin-top:4px;display:flex}.decision-composer button:not(.decision-drawer-close),.decision-drawer button:not(.decision-drawer-close){border:1px solid color-mix(in srgb, var(--ink) 20%, transparent);background:var(--panel);color:var(--ink);cursor:pointer;border-radius:4px;padding:5px 12px;font-size:13px}.decision-composer button:hover:not(.decision-drawer-close),.decision-drawer button:hover:not(.decision-drawer-close){border-color:var(--accent);color:var(--accent)}.rule-family{margin-top:20px}.rule-family h2{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border-bottom:1px solid color-mix(in srgb, var(--ink) 10%, transparent);padding-bottom:6px;font-size:13px}.rule-row{border-radius:6px;padding:14px 12px}.rule-row+.rule-row{border-top:1px solid color-mix(in srgb, var(--ink) 8%, transparent)}.rule-row-focused{background:color-mix(in srgb, var(--accent) 12%, transparent);outline:2px solid var(--accent)}.rule-row-header{align-items:baseline;gap:10px;margin-bottom:6px;display:flex}.rule-code{font-weight:600}.rule-title{color:var(--muted)}.rule-chips{flex-wrap:wrap;gap:8px;display:flex}.rule-chip{border:1px solid color-mix(in srgb, var(--ink) 15%, transparent);color:var(--ink);border-radius:999px;align-items:center;gap:6px;padding:4px 8px;font-size:13px;text-decoration:none;display:inline-flex}.rule-chip:hover{border-color:var(--accent)}.rule-filters{border:1px solid color-mix(in srgb, var(--ink) 18%, transparent);border-radius:8px;flex-wrap:wrap;margin-bottom:6px;display:inline-flex;overflow:hidden}.rule-filters button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:none;align-items:baseline;gap:6px;padding:7px 16px;font-size:13px;display:inline-flex}.rule-filters button b{color:var(--ink);font-variant-numeric:tabular-nums;font-size:15px;font-weight:650}.rule-filters button+button{border-left:1px solid color-mix(in srgb, var(--ink) 18%, transparent)}.rule-filters button[aria-pressed=true]{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--accent)}.rule-filters button[aria-pressed=true] b{color:var(--accent)}.rule-filters button.rule-filter-alert b{color:var(--bad)}.rule-filters button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.rule-filters-note{max-width:78ch;margin:0 0 14px;font-size:12.5px}.rule-layout{grid-template-columns:minmax(240px,310px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.rule-rail{max-height:calc(100vh - 140px);padding-right:4px;position:sticky;top:12px;overflow-y:auto}.rule-rail-family+.rule-rail-family{margin-top:16px}.rule-rail-family h2{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 6px;font-size:11px}.rule-rail-family ul{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.rule-rail-item{width:100%;font:inherit;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;padding:7px 9px;display:block}.rule-rail-item:hover{background:color-mix(in srgb, var(--ink) 4%, transparent)}.rule-rail-item-on{background:color-mix(in srgb, var(--accent) 10%, transparent);border-color:color-mix(in srgb, var(--accent) 35%, transparent)}.rule-rail-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.rule-rail-line{align-items:baseline;gap:7px;display:flex}.rule-rail-title{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.rule-rail-flag{color:var(--bad);margin-left:auto;font-size:10px;line-height:1}.rule-rail-counts{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.rule-rail-item .rule-bar{margin:5px 0 3px}.rule-detail-head{align-items:baseline;gap:10px;margin-bottom:10px;display:flex}.rule-detail-title{letter-spacing:-.01em;margin:0;font-size:17px}.rule-detail-family{text-transform:uppercase;letter-spacing:.06em;margin-left:auto;font-size:11px}.rule-detail-section{margin-top:20px}.rule-detail-h{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);align-items:baseline;gap:10px;margin:0 0 8px;font-size:11px;display:flex}.rule-applies-to{flex-wrap:wrap;align-items:baseline;gap:10px;margin:0;font-size:13px;display:flex}.rule-applies-to-error{color:var(--bad)}.rule-scope-note-warn{color:var(--warn)}.rule-method{flex-wrap:wrap;align-items:baseline;gap:10px;margin:0;font-size:13px;display:flex}.rule-method-blocker{color:var(--muted)}.rule-author-engine{color:var(--accent);font-weight:600}.rule-out-of-scope{color:var(--bad)}.rule-scope-unknown-tag{color:var(--warn)}.rule-run-summary{font-variant-numeric:tabular-nums;margin:8px 0 0;font-size:12.5px}.rule-run-samples{margin:4px 0 0;padding:0;font-size:12px;list-style:none}.rule-run-samples li{margin:2px 0}.rule-run-sample-group{margin-left:6px}.rule-coverage-line{font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:14px;margin:0 0 6px;font-size:13px;display:flex}.rule-findings{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.rule-finding{border:1px solid color-mix(in srgb, var(--ink) 12%, transparent);border-left:3px solid var(--warn);border-radius:6px;padding:9px 12px}.rule-finding-unbacked{border-left-color:var(--bad)}.rule-finding-head{flex-wrap:wrap;align-items:baseline;gap:9px;display:flex}.rule-finding-link{color:var(--ink);font-size:13.5px;text-decoration:none}.rule-finding-link:hover{color:var(--accent)}.rule-finding-decision{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11.5px}.rule-finding-why{max-width:78ch;margin:6px 0 0;font-size:13px}.rule-finding-author{margin:4px 0 0;font-size:11.5px}@media (width<=900px){.rule-layout{grid-template-columns:1fr}.rule-rail{max-height:none;position:static}}.rule-summary{border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);background:var(--panel);color:var(--muted);border-radius:8px;flex-wrap:wrap;gap:22px;margin-bottom:12px;padding:10px 16px;font-size:13px;display:flex}.rule-summary-stat b{color:var(--ink);font-variant-numeric:tabular-nums;margin-right:4px;font-size:15px}.rule-summary-stat.count-bad b{color:var(--bad)}.rule-family h2{align-items:baseline;gap:10px;display:flex}.rule-family-meta{letter-spacing:0;text-transform:none;font-size:12px;font-weight:400}.rule-counts{color:var(--muted);font-variant-numeric:tabular-nums;align-items:baseline;gap:10px;margin-left:auto;font-size:12px;display:inline-flex}.rule-count.count-ok{color:var(--ok)}.rule-count.count-warn{color:var(--warn)}.rule-count.count-bad{color:var(--bad)}.rule-statement{max-width:78ch;margin:2px 0 4px}.rule-rationale{max-width:78ch;color:var(--muted);margin:0 0 8px;font-size:13px}.rule-rationale-label{text-transform:uppercase;letter-spacing:.07em;margin-right:4px;font-size:10.5px;font-weight:700}.rule-bar{background:color-mix(in srgb, var(--ink) 7%, transparent);border-radius:2px;width:100%;height:4px;margin:3px 0 11px;display:flex;overflow:hidden}.rule-bar .bar-ok{background:color-mix(in srgb, var(--ok) 62%, transparent)}.rule-bar .bar-warn{background:color-mix(in srgb, var(--warn) 85%, transparent)}.rule-bar .bar-bad{background:var(--bad)}.rule-bar .bar-muted{background:color-mix(in srgb, var(--ink) 16%, transparent)}.rule-chip-key{font-variant-numeric:tabular-nums}.rule-chip .badge-muted{color:var(--muted);background:0 0;padding:0 0 0 2px;font-weight:500}.rule-chip-prefix{color:var(--muted)}.rule-chip-decision{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.rule-more{border:1px dashed color-mix(in srgb, var(--ink) 22%, transparent);font:inherit;color:var(--muted);cursor:pointer;background:0 0;border-radius:999px;padding:4px 10px;font-size:12.5px}.rule-more:hover{border-color:var(--accent);color:var(--accent)}.rule-more:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.rule-chip-unbacked{border-color:color-mix(in srgb, var(--bad) 55%, transparent)}.rule-chip-nodecision{color:var(--bad);font-weight:600}.rule-outstanding{margin-top:8px}.rule-outstanding-toggle{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:none;align-items:baseline;gap:8px;padding:0;font-size:13px;display:inline-flex}.rule-outstanding-toggle:hover{color:var(--accent)}.rule-outstanding-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}.rule-scope-note{color:var(--muted);font-size:11.5px}.rule-chips-outstanding{margin-top:8px}.rule-chip-todo{color:var(--muted);border-style:dashed}.board-bar-row td{border-bottom:1px solid color-mix(in srgb, var(--ink) 10%, transparent);padding-top:0;padding-bottom:10px}.board-bar{background:color-mix(in srgb, var(--ink) 8%, transparent);border-radius:4px;width:100%;height:8px;display:flex;overflow:hidden}.board-bar-segment{height:100%}.bar-ok{background:var(--ok)}.bar-warn{background:var(--warn)}.bar-bad{background:var(--bad)}.bar-stale{background:var(--stale)}.bar-muted{background:var(--muted)}.extra-annotations,.extra-annotations-details{flex-direction:column;gap:8px;display:flex}.extra-annotations-summary{cursor:pointer;letter-spacing:.02em;color:var(--muted);font-size:12px;font-weight:600}.extra-annotations-summary:hover{color:var(--ink)}.extra-annotations-note{margin:0;font-size:12px}.dax-panel{flex-direction:column;gap:12px;display:flex}.dax-panel-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.dax-panel-head .definition-label{margin:0}.dax-panel-chips{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dax-chip{border:1px solid color-mix(in srgb, var(--ink) 16%, transparent);color:var(--muted);border-radius:999px;padding:2px 8px;font-size:12px}.dax-copy-btn{border:1px solid color-mix(in srgb, var(--accent) 45%, transparent);color:var(--accent);cursor:pointer;background:0 0;border-radius:4px;padding:3px 10px;font-size:12px}.dax-copy-btn:hover{background:color-mix(in srgb, var(--accent) 8%, transparent)}.dax-expression{border:1px solid color-mix(in srgb, var(--ink) 12%, transparent);border-left:3px solid var(--accent);background:color-mix(in srgb, var(--ink) 4%, var(--panel));white-space:pre-wrap;word-break:break-word;border-radius:6px;margin:0;padding:12px 14px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:13px;line-height:1.6;overflow-x:auto}.dax-references .definition-label{margin-bottom:6px}.dax-reference-list{flex-wrap:wrap;gap:6px 14px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.dax-reference-detail{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px}.dax-references-empty{margin:0;font-size:13px}.measures-count{font-size:13px}.measure-folder+.measure-folder{margin-top:22px}.measure-folder-title{text-transform:uppercase;letter-spacing:.05em;color:var(--ink);margin:0 0 8px;font-size:12px;font-weight:650}.measure-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.measure-row{border-bottom:1px solid color-mix(in srgb, var(--ink) 8%, transparent);flex-direction:column;gap:2px;min-width:0;padding:6px 0;display:flex}.measure-row-main{align-items:baseline;gap:10px;min-width:0;display:flex}.measure-description-line{margin:0;font-size:12px;line-height:1.4}.measure-name{flex:none;font-size:14px;font-weight:600}.measure-dax-preview{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--muted);flex:auto;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px;overflow:hidden}.search-label{max-width:480px;color:var(--muted);flex-direction:column;gap:4px;margin-bottom:16px;font-size:13px;display:flex}.search-input{border:1px solid color-mix(in srgb, var(--ink) 20%, transparent);background:var(--bg);color:var(--ink);font:inherit;border-radius:4px;padding:8px 10px}.search-results{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.search-result-row{border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);color:var(--ink);border-radius:6px;align-items:center;gap:8px;padding:8px 10px;text-decoration:none;display:flex}.search-result-row:hover{border-color:var(--accent)}.search-result-name{font-weight:600}.search-result-key{color:var(--muted);margin-left:auto;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px}.search-group+.search-group{margin-top:18px}.search-group-title{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 8px;font-size:13px}.search-result-note{font-size:12px;font-style:italic}.search-result-why{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.search-legend h2{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 12px;font-size:13px}.search-legend-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.search-legend-block h3{margin:0 0 6px;font-size:13px;font-weight:600}.search-legend-block ul{color:var(--muted);flex-direction:column;gap:4px;margin:0;padding-left:18px;font-size:13px;display:flex}.search-legend-block code{color:var(--ink);font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px}.search-legend-block strong{color:var(--ink)}.search-legend-footnote{margin:14px 0 0;font-size:12px}.settings-page{flex-direction:column;gap:16px;max-width:720px;display:flex}.settings-section-title{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 10px;font-size:13px}.settings-wh-name{margin:0 0 10px;font-size:16px;font-weight:650}.settings-last-sync{margin:10px 0 0;font-size:13px}.settings-identity-note{margin:0 0 10px;font-size:13px}.settings-product{margin:0;font-size:15px;font-weight:650}.settings-subheading{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:14px 0 6px;font-size:12px}.settings-ladder-note{margin:8px 0 0;font-size:12px}.explore-page{flex-direction:column;gap:12px;height:100%;min-height:0;display:flex}.explore-toolbar{--explore-ctl:36px;flex-wrap:wrap;flex:none;align-items:center;gap:8px;padding:8px 12px;display:flex}.explore-toolbar button:focus-visible,.explore-toolbar input:focus-visible,.explore-active-filters button:focus-visible,.explore-revealed-note button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}.explore-tb-divider{background:color-mix(in srgb, var(--ink) 16%, transparent);flex:none;width:1px;height:20px}.explore-tb-spacer{flex:1 1 0;min-width:0}@media (width<=560px){.explore-toolbar{gap:6px;padding:8px}.explore-search{flex:100%;max-width:none}.explore-tb-divider,.explore-tb-spacer{display:none}.explore-pop-panel{left:auto;right:0}}.explore-info-hint{width:var(--explore-ctl);height:var(--explore-ctl);color:var(--muted);cursor:help;border-radius:999px;flex:none;justify-content:center;align-items:center;font-size:14px;display:inline-flex;position:relative}.explore-info-hint:hover,.explore-info-hint:focus-visible{color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, transparent);outline:none}.explore-info-tooltip{z-index:30;border:1px solid color-mix(in srgb, var(--ink) 15%, transparent);background:var(--panel);width:max-content;max-width:320px;color:var(--ink);text-align:left;box-shadow:0 4px 14px color-mix(in srgb, var(--ink) 18%, transparent);cursor:default;border-radius:6px;padding:6px 10px;font-size:12px;line-height:1.4;display:none;position:absolute;top:calc(100% + 8px);right:-6px}.explore-info-hint:hover .explore-info-tooltip,.explore-info-hint:focus-visible .explore-info-tooltip{display:block}.explore-search{min-width:0;max-width:420px;height:var(--explore-ctl);border:1px solid color-mix(in srgb, var(--ink) 20%, transparent);background:var(--bg);border-radius:8px;flex:260px;align-items:center;gap:8px;padding:0 4px 0 10px;display:flex}.explore-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 20%, transparent)}.explore-toolbar .explore-search-input:focus-visible{outline:none}.explore-search-glyph{fill:none;width:14px;height:14px;stroke:var(--muted);stroke-width:1.6px;stroke-linecap:round;flex:none}.explore-search-input{min-width:0;height:100%;color:var(--ink);font:inherit;background:0 0;border:none;flex:auto;padding:0;font-size:13px}.explore-search-hint{color:var(--muted);white-space:nowrap;flex:none;align-items:center;gap:6px;font-size:11px;display:flex}.explore-search-count{font-variant-numeric:tabular-nums}.explore-search-hidden-note{background:color-mix(in srgb, var(--warn) 16%, transparent);color:color-mix(in srgb, var(--warn) 80%, var(--ink));border-radius:999px;padding:1px 6px}.explore-search-go{background:color-mix(in srgb, var(--accent) 14%, transparent);width:28px;height:28px;color:var(--accent);font:inherit;cursor:pointer;border:none;border-radius:6px;flex:none;justify-content:center;align-items:center;font-size:14px;line-height:1;display:inline-flex}.explore-search-go:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 26%, transparent)}.explore-search-go:disabled{color:color-mix(in srgb, var(--muted) 55%, transparent);cursor:default;background:0 0}.explore-pop{flex:none;position:relative}.explore-pop-btn{height:var(--explore-ctl);border:1px solid color-mix(in srgb, var(--ink) 20%, transparent);background:var(--panel);color:var(--ink);font:inherit;white-space:nowrap;cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:0 10px;font-size:13px;font-weight:600;display:inline-flex}.explore-pop-btn:hover{border-color:var(--accent);color:var(--accent)}.explore-pop-btn[aria-expanded=true]{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--accent)}.explore-pop-caret{opacity:.75;margin-left:1px;font-size:11px;line-height:1}.explore-pop-panel{z-index:40;border:1px solid color-mix(in srgb, var(--ink) 15%, transparent);background:var(--panel);min-width:190px;max-width:min(320px,100vw - 24px);max-height:min(60vh,380px);box-shadow:0 10px 26px color-mix(in srgb, var(--ink) 22%, transparent);border-radius:8px;padding:10px;position:absolute;top:calc(100% + 6px);left:0;overflow-y:auto}.explore-pop-title{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:0 0 6px 4px;padding:0;font-size:11px;font-weight:600}.explore-layer-filters{border:none;flex-direction:column;gap:2px;margin:0;padding:0;display:flex}.explore-layer-check{cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:5px 6px;font-size:13px;display:flex}.explore-layer-check:hover{background:color-mix(in srgb, var(--ink) 7%, transparent)}.explore-zoom-controls{height:var(--explore-ctl);border:1px solid color-mix(in srgb, var(--ink) 18%, transparent);border-radius:8px;flex:none;align-items:stretch;display:inline-flex;overflow:hidden}.explore-zoom-controls button{width:34px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;font-size:15px;line-height:1;display:inline-flex}.explore-zoom-controls button+button{border-left:1px solid color-mix(in srgb, var(--ink) 18%, transparent)}.explore-zoom-controls button:hover{background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--accent)}.explore-view-toggle{height:var(--explore-ctl);border:1px solid color-mix(in srgb, var(--ink) 18%, transparent);border-radius:8px;flex:none;display:inline-flex;overflow:hidden}.explore-view-toggle button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:none;padding:0 14px;font-size:13px;font-weight:600}.explore-view-toggle button+button{border-left:1px solid color-mix(in srgb, var(--ink) 18%, transparent)}.explore-view-toggle button[aria-pressed=true]{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--accent)}.explore-view-toggle button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.explore-3d-container{border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);background:var(--bg);border-radius:8px;flex:1;min-width:0;height:100%;position:relative;overflow:hidden}.explore-3d-container canvas{display:block}.explore3d-labels{pointer-events:none;position:absolute;top:0;left:0}.explore3d-label{pointer-events:auto;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;max-width:180px;color:var(--ink);background:color-mix(in srgb, var(--panel) 82%, transparent);border:1px solid color-mix(in srgb, var(--ink) 14%, transparent);border-radius:4px;padding:1px 7px;font-size:11px;line-height:1.4;overflow:hidden}.explore3d-label:hover{border-color:var(--accent)}.explore3d-label-retired{color:var(--muted);border-style:dashed}.explore3d-label-focused{border-color:var(--accent);color:var(--accent);font-weight:650}.explore-3d-loading{border:1px dashed color-mix(in srgb, var(--muted) 35%, transparent);border-radius:8px;flex:1;justify-content:center;align-items:center;display:flex}.explore-3d-unavailable{margin:0;font-size:12px}.explore-legend{color:var(--ink);flex-direction:column;align-items:stretch;gap:1px;font-size:12px;display:flex}.explore-legend-item{font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;margin:0;padding:5px 6px;font-size:13px;display:flex}.explore-legend-item:hover{background:color-mix(in srgb, var(--ink) 8%, transparent);color:var(--ink)}.explore-legend-item:focus-visible{outline:2px solid var(--accent);outline-offset:-1px}.explore-legend-item-off{opacity:.45;text-decoration:line-through}.explore-legend-reset{border:1px solid color-mix(in srgb, var(--accent) 45%, transparent);background:color-mix(in srgb, var(--accent) 10%, transparent);color:var(--accent);font:inherit;cursor:pointer;border-radius:6px;margin:6px 0 0;padding:5px 10px;font-size:12px;font-weight:600}.explore-legend-reset:hover{background:color-mix(in srgb, var(--accent) 18%, transparent)}.explore-legend-swatch{border-radius:3px;flex:none;width:10px;height:10px}.explore-legend-swatch-fact{background:var(--fact)}.explore-legend-swatch-aggregate{background:var(--agg)}.explore-legend-swatch-dimension{background:var(--dim)}.explore-legend-swatch-bridge{background:var(--bridge)}.explore-legend-swatch-slicer{background:var(--slicer)}.explore-legend-swatch-security{background:var(--security)}.explore-legend-swatch-config{background:var(--config)}.explore-legend-swatch-loader{background:var(--loader)}.explore-legend-swatch-page{background:var(--page)}.explore-legend-swatch-measure{background:var(--measure)}.explore-legend-swatch-table{background:var(--table)}.explore-legend-retired{border-top:1px solid color-mix(in srgb, var(--ink) 12%, transparent);color:var(--muted);align-items:center;gap:8px;margin-top:6px;padding:6px 6px 0;font-size:12px;display:flex}.explore-legend-swatch-retired{border:1.5px dashed var(--muted);background:0 0}.explore-legend-revealed{border-top:1px solid color-mix(in srgb, var(--ink) 12%, transparent);color:var(--muted);align-items:center;gap:8px;margin-top:6px;padding:6px 6px 0;font-size:12px;display:flex}.explore-legend-swatch-revealed{border:1.5px dashed var(--muted);background:0 0}.explore-legend-retired+.explore-legend-revealed{border-top:none;margin-top:0;padding-top:0}.explore-active-filters{color:var(--muted);flex-wrap:wrap;flex:none;align-items:center;gap:6px;font-size:12px;display:flex}.explore-active-filters-label{letter-spacing:.02em;font-weight:600}.explore-active-filter-chip{border:1px solid color-mix(in srgb, var(--ink) 18%, transparent);background:var(--panel);color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:3px 8px;font-size:12px;display:inline-flex}.explore-active-filter-chip:hover{border-color:var(--accent);color:var(--accent)}.explore-active-filter-x{color:var(--muted);font-size:10px}.explore-active-filter-chip:hover .explore-active-filter-x{color:var(--accent)}.explore-active-filters-clear{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:none;padding:3px 4px;font-size:12px;font-weight:600}.explore-active-filters-clear:hover{text-decoration:underline}.explore-revealed-note{color:color-mix(in srgb, var(--warn) 80%, var(--ink));flex:none;align-items:center;gap:8px;font-size:12px;display:flex}.explore-revealed-note-clear{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:none;padding:3px 4px;font-size:12px;font-weight:600}.explore-revealed-note-clear:hover{text-decoration:underline}.explore-body{flex:1;align-items:stretch;gap:16px;min-height:0;display:flex}.explore-svg{background:var(--panel);border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);border-radius:8px;flex:1;width:100%;min-width:0;height:100%;display:block}.explore-svg:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.explore-bg{fill:#0000;cursor:grab}.explore-svg.is-panning,.explore-svg.is-panning .explore-bg,.explore-svg.is-panning .explore-node{cursor:grabbing}.explore-col-title{fill:var(--ink);text-anchor:middle;letter-spacing:.05em;font-size:12px;font-weight:700}.explore-col-filtered-tag{fill:color-mix(in srgb, var(--muted) 80%, transparent);letter-spacing:normal;font-size:10px;font-weight:400}.explore-col-breakdown{fill:var(--muted);text-anchor:middle;font-size:10px}.explore-col-detail{fill:color-mix(in srgb, var(--muted) 75%, transparent);text-anchor:middle;font-size:10px}.explore-col-detail-link{fill:var(--accent);cursor:pointer;text-decoration:underline}.explore-col-detail-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.explore-col-empty-label{fill:var(--muted);text-anchor:middle;letter-spacing:.04em;font-size:11px;font-weight:600}.explore-col-empty-strip{fill:color-mix(in srgb, var(--muted) 6%, transparent);stroke:color-mix(in srgb, var(--muted) 35%, transparent);stroke-dasharray:4 3}.explore-group-label{fill:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-size:10px;font-weight:700}.explore-node{cursor:pointer;transition:opacity .2s,transform .25s}@media (prefers-reduced-motion:reduce){.explore-node,.explore-node-rect{transition:none}}.explore-node-rect{fill:var(--panel);stroke:color-mix(in srgb, var(--ink) 25%, transparent);stroke-width:1px;transform-box:fill-box;transform-origin:50%;transition:stroke .15s,stroke-width .15s,transform .15s}.explore-node:hover .explore-node-rect{stroke:var(--accent);stroke-width:2px}.explore-node:focus{outline:none}.explore-node:focus .explore-node-rect{stroke:var(--accent);stroke-width:2.5px}.explore-node-label{fill:var(--ink);pointer-events:none;font-size:12px}.explore-node-subtype-fact .explore-node-rect{fill:color-mix(in srgb, var(--fact) 14%, var(--panel));stroke:var(--fact);stroke-width:1.6px;transform:scale(1.045)}.explore-node-subtype-fact .explore-node-label{font-weight:650}.explore-node-subtype-aggregate .explore-node-rect{fill:color-mix(in srgb, var(--agg) 14%, var(--panel));stroke:var(--agg)}.explore-node-subtype-dimension .explore-node-rect{fill:color-mix(in srgb, var(--dim) 14%, var(--panel));stroke:var(--dim)}.explore-node-subtype-bridge .explore-node-rect{fill:color-mix(in srgb, var(--bridge) 14%, var(--panel));stroke:var(--bridge)}.explore-node-subtype-slicer .explore-node-rect{fill:color-mix(in srgb, var(--slicer) 14%, var(--panel));stroke:var(--slicer)}.explore-node-subtype-security .explore-node-rect{fill:color-mix(in srgb, var(--security) 14%, var(--panel));stroke:var(--security)}.explore-node-subtype-config .explore-node-rect{fill:color-mix(in srgb, var(--config) 14%, var(--panel));stroke:var(--config)}.explore-node-subtype-loader .explore-node-rect{fill:color-mix(in srgb, var(--loader) 14%, var(--panel));stroke:var(--loader)}.explore-node-subtype-page .explore-node-rect{fill:color-mix(in srgb, var(--page) 14%, var(--panel));stroke:var(--page)}.explore-node-subtype-measure .explore-node-rect{fill:color-mix(in srgb, var(--measure) 14%, var(--panel));stroke:var(--measure)}.explore-node-subtype-table .explore-node-rect{fill:color-mix(in srgb, var(--table) 14%, var(--panel));stroke:var(--table)}.node-revealed .explore-node-rect{stroke-dasharray:4 3}.explore-node-retired .explore-node-rect{stroke-dasharray:3 2}.explore-node-focused .explore-node-rect{stroke:var(--accent);stroke-width:2.5px;transform:scale(1.06)}.explore-node-neighbor .explore-node-rect{stroke:var(--accent);stroke-width:1.5px}.explore-node-dimmed{opacity:.25}.explore-node-match .explore-node-rect{stroke:var(--warn);stroke-width:2px}.explore-edge{stroke:var(--accent);opacity:.55;pointer-events:none}.explore-edge-intra{fill:none}.explore-edge-forward{stroke:var(--accent)}.explore-edge-backward{stroke:var(--warn);stroke-dasharray:7 4;opacity:.75}.explore-arrow{overflow:visible}.explore-arrow-forward path{fill:var(--accent)}.explore-arrow-backward path{fill:var(--warn)}.explore-arrow-intra path{fill:var(--accent)}.explore-node-mark{pointer-events:none}.explore-node-mark-violation circle{fill:var(--bad);stroke:var(--panel);stroke-width:1px}.explore-node-mark-exception path{fill:var(--warn);stroke:var(--panel);stroke-width:1px}.explore-node-mark-unassessed circle{fill:none;stroke:color-mix(in srgb, var(--muted) 85%, transparent);stroke-width:1.5px}.explore-rule-menu{flex-direction:column;align-items:stretch;gap:1px;display:flex}.explore-rule-menu-item{white-space:nowrap;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;margin:0;padding:5px 6px;font-size:13px;display:flex}.explore-rule-menu-item b{font-variant-numeric:tabular-nums;color:var(--muted);margin-left:auto;font-size:13px;font-weight:650}.explore-rule-menu-item:hover{background:color-mix(in srgb, var(--ink) 8%, transparent)}.explore-rule-menu-item:focus-visible{outline:2px solid var(--accent);outline-offset:-1px}.explore-rule-menu-item-on{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--accent);font-weight:600}.explore-rule-menu-item-on b{color:var(--accent)}.explore-rule-menu-item-alert b{color:var(--bad)}.explore-rule-swatch-none{background:0 0;border:none}.explore-pop-btn-on{border-color:color-mix(in srgb, var(--accent) 55%, transparent);background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--accent);font-weight:600}.explore-pop-btn-error{color:var(--muted);cursor:help;border-style:dashed;align-items:center;display:inline-flex}.explore-rule-swatch{border-radius:50%;flex:none;align-self:center;width:9px;height:9px}.explore-rule-swatch-violation{background:var(--bad)}.explore-rule-swatch-exception{background:var(--warn);border-radius:2px;width:8px;height:8px;transform:rotate(45deg)}.explore-rule-swatch-unassessed{border:1.5px solid color-mix(in srgb, var(--muted) 85%, transparent);background:0 0}.explore-rule-swatch-clean{background:var(--ok)}.explore-rule-swatch-uncovered{border:1.5px dashed color-mix(in srgb, var(--muted) 70%, transparent);background:0 0}.explore-legend-backward{border-top:1px solid color-mix(in srgb, var(--ink) 12%, transparent);color:var(--muted);align-items:center;gap:8px;margin-top:6px;padding:6px 6px 0;font-size:12px;display:flex}.explore-legend-swatch-backward{border-top:2px dashed var(--warn);background:0 0;border-radius:0;width:14px;height:2px}.explore-panel-rules{border-top:1px solid color-mix(in srgb, var(--ink) 10%, transparent);flex-direction:column;gap:4px;padding-top:8px;display:flex}.explore-panel-rules h3{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);align-items:center;gap:8px;margin:0;font-size:11px;font-weight:600;display:flex}.explore-rule-chip{text-transform:none;letter-spacing:0;border:1px solid color-mix(in srgb, var(--ink) 15%, transparent);color:var(--ink);border-radius:999px;align-items:center;gap:5px;padding:2px 7px;font-size:11.5px;font-weight:600;display:inline-flex}.explore-rule-chip-violation{border-color:color-mix(in srgb, var(--bad) 55%, transparent);background:color-mix(in srgb, var(--bad) 12%, transparent)}.explore-rule-chip-exception{border-color:color-mix(in srgb, var(--warn) 55%, transparent);background:color-mix(in srgb, var(--warn) 12%, transparent)}.explore-rule-chip-clean{border-color:color-mix(in srgb, var(--ok) 45%, transparent);background:color-mix(in srgb, var(--ok) 10%, transparent)}.explore-rule-summary{margin:0;font-size:13px}.explore-rule-list{flex-direction:column;gap:3px;margin:2px 0 0;padding:0;font-size:12.5px;list-style:none;display:flex}.explore-rule-clear,.explore-panel-rules-error{margin:0;font-size:12px;line-height:1.45}.explore-neighbor-summary{margin:0 0 4px;font-size:12.5px;font-weight:600}.explore-neighbor-direction{color:var(--warn);white-space:nowrap;font-size:11.5px}.explore-neighbor-direction.muted{color:var(--muted)}.explore-3d-note{flex:none;margin:0 0 6px;font-size:12px}.explore-panel{flex-direction:column;flex:none;gap:10px;width:280px;max-height:100%;display:flex;overflow-y:auto}.explore-isolate-btn{border:1px solid var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--accent);font:inherit;cursor:pointer;border-radius:6px;padding:6px 10px;font-size:13px;font-weight:600}.explore-isolate-btn:hover{background:color-mix(in srgb, var(--accent) 22%, transparent)}.explore-panel-description{margin:0;font-size:13px;line-height:1.5}.explore-panel-annotations{flex-direction:column;gap:8px;margin:0;display:flex}.explore-panel-annotation-row dt{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:11px;font-weight:600}.explore-panel-annotation-row dd{margin:0;font-size:13px;line-height:1.5}.explore-panel-threads{margin:0;font-size:12px}.explore-panel-header{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.explore-panel h2{margin:0;font-size:16px}.explore-panel-close{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:4px;flex:none;margin:-2px -4px 0 0;padding:2px 6px;font-size:14px;line-height:1.4}.explore-panel-close:hover{color:var(--ink);background:color-mix(in srgb, var(--ink) 8%, transparent)}.explore-panel-key{margin:0;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px}.explore-panel-badges{flex-wrap:wrap;gap:6px;display:flex}.explore-neighbor-group h3{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 6px;font-size:12px;font-weight:600}.explore-neighbor-list{flex-direction:column;gap:4px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.explore-neighbor-btn{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.explore-neighbor-btn.node-revealed{text-decoration-style:dashed}.explore-edge-meta{font-size:12px}.explore-neighbor-hidden{font-style:italic}.explore-neighbor-hidden-tag{font-size:11px;font-style:italic}.explore-neighbor-revealed-tag{color:color-mix(in srgb, var(--warn) 80%, var(--ink));font-size:11px;font-style:italic}.explore-open-link{margin-top:4px;font-size:13px;font-weight:600}.explore-empty{text-align:center;color:var(--muted);padding:60px 20px}.dashboard-header-meta{margin-left:auto;font-size:13px}.dashboard-wh-name{color:var(--ink);font-weight:600}.dashboard-kpis{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:16px;display:grid}.kpi-card{background:var(--panel);border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);color:inherit;border-radius:8px;flex-direction:column;gap:6px;padding:14px 16px;text-decoration:none;transition:border-color .12s;display:flex}.kpi-card:hover{border-color:var(--accent)}.kpi-card-label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:12px;font-weight:600}.kpi-card-percent{font-size:26px;font-weight:700;line-height:1}.kpi-bar{background:color-mix(in srgb, var(--ink) 10%, transparent);border-radius:999px;height:6px;overflow:hidden}.kpi-bar-fill{border-radius:999px;height:100%}.kpi-card-fraction{font-size:12px}.dashboard-lower{grid-template-columns:2fr 1fr;align-items:start;gap:16px;display:grid}@media (width<=900px){.dashboard-lower{grid-template-columns:1fr}}.dashboard-lower-main,.dashboard-lower-side{flex-direction:column;gap:16px;min-width:0;display:flex}.dashboard-next-tasks h2,.dashboard-coverage h2,.dashboard-rules-panel h2,.dashboard-discussion-panel h2{margin:0 0 12px;font-size:14px;font-weight:650}.next-task-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.next-task-row{border-bottom:1px solid color-mix(in srgb, var(--ink) 8%, transparent);align-items:flex-start;gap:10px;padding:10px 4px;display:flex}.next-task-row:last-child{border-bottom:none}.severity-dot{border-radius:999px;flex:none;width:10px;height:10px;margin-top:5px}.severity-high{background:var(--bad)}.severity-medium{background:var(--warn)}.severity-low{background:var(--muted)}.next-task-body{flex:1;min-width:0}.next-task-headline{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.next-task-title{font-size:14px;font-weight:600}.next-task-count{background:var(--muted)}.next-task-detail{margin:2px 0 0;font-size:13px}.next-task-go{white-space:nowrap;flex:none;align-self:center;font-size:13px;font-weight:600}.dashboard-coverage-table td{vertical-align:middle}.dashboard-mini-bar{background:color-mix(in srgb, var(--ink) 10%, transparent);vertical-align:middle;border-radius:999px;width:60px;height:6px;margin-left:6px;display:inline-block;overflow:hidden}.dashboard-mini-bar-fill{border-radius:999px;height:100%}.dashboard-verdict-chips{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.dashboard-verdict-chips .badge{text-decoration:none}.dashboard-rules-panel p,.dashboard-discussion-panel p{margin:4px 0;font-size:13px}.versions-header-meta{margin-left:auto;font-size:13px}.versions-wh-name{color:var(--ink);font-weight:600}.versions-compare-panel h2,.versions-timeline h2{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 12px;font-size:13px}.versions-compare-panel{margin-bottom:16px}.versions-compare-controls{flex-wrap:wrap;align-items:flex-end;gap:14px;display:flex}.versions-compare-controls label{color:var(--muted);flex-direction:column;gap:4px;font-size:12px;display:flex}.versions-compare-controls select{min-width:220px}.versions-compare-result{border-top:1px solid color-mix(in srgb, var(--ink) 10%, transparent);margin-top:16px;padding-top:14px}.versions-compare-totals{gap:8px;margin-bottom:12px;display:flex}.versions-compare-layer-table{margin-bottom:16px}.versions-compare-top-objects{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.versions-compare-top-objects li{align-items:center;gap:8px;font-size:13px;display:flex}.versions-run-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.versions-run-row{border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);border-radius:6px}.versions-run-summary{cursor:pointer;width:100%;font:inherit;color:inherit;text-align:left;background:0 0;border:none;align-items:center;gap:14px;padding:10px 14px;display:flex}.versions-run-when{min-width:110px;font-size:13px;font-weight:600}.versions-run-duration{min-width:56px;font-size:12px}.versions-run-chips{flex-wrap:wrap;gap:6px;display:flex}.versions-run-change-count{white-space:nowrap;margin-left:auto;font-size:12px}.versions-changes-status{padding:4px 14px 12px}.versions-changes-list{flex-direction:column;gap:6px;padding:0 14px 12px;display:flex}.versions-truncated-notice{margin:0;font-size:12px}.versions-change-row{border-top:1px solid color-mix(in srgb, var(--ink) 6%, transparent);padding-top:8px}.versions-change-row-head{flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.versions-change-key{font-weight:600}.versions-change-diff{margin-top:4px;font-size:12px}.versions-change-diff summary{cursor:pointer;color:var(--muted)}.version-chip{color:var(--muted);background:color-mix(in srgb, var(--muted) 14%, transparent);white-space:nowrap;vertical-align:middle;border-radius:999px;margin-left:6px;padding:1px 7px;font-size:11px;font-weight:600;display:inline-block}.version-chip-unversioned{font-style:italic}.version-chip-drifted{color:#fff;background:var(--warn);font-style:normal}.drift-header-meta{margin-left:auto;font-size:13px}.drift-layer-table{margin-bottom:4px}.drift-item-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.drift-item-row{border:1px solid color-mix(in srgb, var(--ink) 10%, transparent);border-radius:6px;padding:10px 14px}.drift-item-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.drift-item-key{font-weight:600}.drift-item-count{margin-left:auto;font-size:12px}.drift-artifact-list{flex-direction:column;gap:4px;margin:8px 0 0;padding:0;list-style:none;display:flex}.drift-artifact-row{align-items:center;gap:8px;font-size:13px;display:flex}.drift-artifact-key{font-weight:600}.drift-whatchanged-toggle{color:var(--accent);cursor:pointer;background:0 0;border:none;margin-top:8px;padding:0;font-size:12px;font-weight:600}.drift-changed-status{margin-top:6px}.drift-changed-list{flex-direction:column;gap:8px;margin-top:8px;display:flex}.drift-changed-row{border-top:1px solid color-mix(in srgb, var(--ink) 6%, transparent);padding-top:6px}.kpi-drift-count.tone-ok{color:var(--ok)}.kpi-drift-count.tone-warn{color:var(--warn)}:root{--report-accent:#fb7185}.app-header-report-btn{border:1px solid var(--report-accent);background:color-mix(in srgb, var(--report-accent) 14%, var(--panel));color:var(--ink);cursor:pointer;font:inherit;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:600;display:flex}.app-header-report-btn:hover{background:color-mix(in srgb, var(--report-accent) 24%, var(--panel))}.report-btn-glyph{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;vertical-align:-2px;flex:none;width:13px;height:13px}.report-dialog-backdrop{z-index:50;background:#00000059;position:fixed;inset:0}.report-dialog{z-index:51;flex-direction:column;gap:10px;width:520px;max-width:calc(100vw - 32px);max-height:calc(100vh - 64px);display:flex;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.report-dialog-header{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.report-dialog-header h2{align-items:center;gap:8px;margin:0;font-size:16px;display:flex}.report-dialog-icon{fill:none;width:16px;height:16px;stroke:var(--report-accent);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;flex:none}.report-dialog-intro{margin:0;font-size:13px}.report-preset-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.report-preset-btn{border:1px solid color-mix(in srgb, var(--ink) 15%, transparent);background:var(--bg);width:100%;color:var(--ink);cursor:pointer;text-align:left;font:inherit;border-radius:6px;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 10px;display:flex}.report-preset-btn:hover{border-color:var(--report-accent)}.report-preset-btn[aria-pressed=true]{border-color:var(--report-accent);background:color-mix(in srgb, var(--report-accent) 14%, transparent)}.report-preset-name{font-size:13px;font-weight:600}.report-preset-audience{font-size:12px}.report-dialog-cover-note{margin:0;font-size:12px}.report-section-list{border:1px solid color-mix(in srgb, var(--ink) 12%, transparent);border-radius:6px;grid-template-columns:1fr 1fr;gap:4px 12px;margin:0;padding:8px 10px;display:grid}.report-section-list legend{color:var(--muted);padding:0 4px;font-size:12px}.report-section-row{align-items:center;gap:6px;font-size:13px;display:flex}.report-section-row label{cursor:pointer}.report-dialog-depth{color:var(--muted);flex-direction:column;gap:4px;max-width:200px;font-size:13px;display:flex}.report-dialog-depth select{border:1px solid color-mix(in srgb, var(--ink) 20%, transparent);background:var(--bg);color:var(--ink);font:inherit;border-radius:4px;padding:6px 8px}.report-dialog-actions{gap:8px;margin-top:4px;display:flex}.report-dialog-actions button:first-child{border:1px solid var(--report-accent);background:color-mix(in srgb, var(--report-accent) 14%, var(--panel));color:var(--ink);cursor:pointer;border-radius:4px;align-items:center;gap:6px;padding:5px 12px;font-size:13px;font-weight:600;display:inline-flex}.report-dialog-actions button:first-child:hover:not(:disabled){background:color-mix(in srgb, var(--report-accent) 24%, var(--panel))}.report-dialog-actions button:first-child:disabled{opacity:.5;cursor:not-allowed}.report-dialog-actions button:not(:first-child){border:1px solid color-mix(in srgb, var(--ink) 20%, transparent);background:var(--panel);color:var(--ink);cursor:pointer;border-radius:4px;padding:5px 12px;font-size:13px}.report-dialog-actions button:not(:first-child):hover{border-color:var(--accent);color:var(--accent)}.signin-shell{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.signin-card{border:1px solid color-mix(in srgb, var(--ink) 20%, transparent);background:var(--panel);border-radius:10px;flex-direction:column;gap:20px;width:100%;max-width:380px;padding:32px;display:flex}.signin-brand{align-items:center;gap:8px;display:flex}.signin-brand-icon{fill:none;width:17px;height:17px;stroke:var(--report-accent);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;flex:none}.signin-brand-name{letter-spacing:.01em;color:var(--ink);font-size:14px;font-weight:600}.signin-form{flex-direction:column;gap:10px;display:flex}.signin-title{color:var(--ink);text-wrap:balance;margin:0;font-size:21px;font-weight:650}.signin-lede{color:var(--muted);margin:0 0 6px;font-size:13px;line-height:1.5}.signin-label{letter-spacing:.02em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:600}.signin-input{border:1px solid color-mix(in srgb, var(--ink) 20%, transparent);background:var(--bg);color:var(--ink);font:inherit;border-radius:6px;padding:9px 11px;font-size:14px}.signin-input:focus-visible{outline:2px solid var(--report-accent);outline-offset:1px}.signin-input-code{font-variant-numeric:tabular-nums;letter-spacing:.28em;text-align:center;font-size:22px;font-weight:600}.signin-submit{border:1px solid var(--report-accent);background:var(--report-accent);color:#fff;cursor:pointer;font:inherit;border-radius:6px;margin-top:6px;padding:10px 14px;font-size:14px;font-weight:600}.signin-submit:hover:not(:disabled){background:color-mix(in srgb, var(--report-accent) 85%, #000)}.signin-submit:disabled{opacity:.55;cursor:default}.signin-back{color:var(--muted);cursor:pointer;font:inherit;text-underline-offset:2px;background:0 0;border:0;padding:4px;font-size:12.5px;text-decoration:underline}.signin-back:hover:not(:disabled){color:var(--ink)}.signin-error{border:1px solid color-mix(in srgb, var(--bad) 45%, color-mix(in srgb, var(--ink) 20%, transparent));background:color-mix(in srgb, var(--bad) 10%, var(--panel));color:var(--ink);border-radius:6px;margin:0;padding:9px 11px;font-size:13px;line-height:1.45}.people-add{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.people-add label{color:var(--muted);font-size:12px;font-weight:600}.people-add input,.people-add select,.people-table select{border:1px solid color-mix(in srgb, var(--ink) 20%, transparent);background:var(--bg);color:var(--ink);font:inherit;border-radius:5px;padding:5px 8px;font-size:13px}.people-add button,.people-toggle{border:1px solid color-mix(in srgb, var(--ink) 20%, transparent);background:var(--panel);color:var(--ink);cursor:pointer;font:inherit;border-radius:5px;padding:5px 12px;font-size:13px;font-weight:600}.people-add button:hover:not(:disabled),.people-toggle:hover:not(:disabled){border-color:var(--report-accent)}.people-add button:disabled,.people-toggle:disabled{opacity:.55;cursor:default}.people-name{display:block}.people-email{font-size:12px;display:block}.people-row-revoked .people-name,.people-row-revoked .people-email{opacity:.6;text-decoration:line-through}
