:root{color:#243d35;font-synthesis:none;--ink:#243d35;--muted:#68786f;--green:#245d55;--deep:#173c38;--line:#dfe5dd;--paper:#fff;--amber:#a9652f;--soft:#e9f0e9;--danger:#a63b32;background:#f5f6f2;font-family:Noto Sans SC,Microsoft YaHei,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;font-size:14px;line-height:1.65}button,input,select{font:inherit}button{cursor:pointer;color:inherit;background:0 0;border:0;min-height:44px;transition:background .16s,color .16s,border-color .16s}button:disabled{cursor:not-allowed;opacity:.5}button:hover:not(:disabled){filter:brightness(.94)}button:focus-visible,select:focus-visible,input:focus-visible,a:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #ba8e43}a{color:inherit}h1,h2,h3,p{margin:0}h1{letter-spacing:-1px;font-size:30px;font-weight:600;line-height:1.4}h2{font-size:18px;font-weight:600}h3{font-size:14px}small{font-size:12px}select{max-width:100%;color:var(--ink);background:#fff;border:1px solid #cbd5cc;border-radius:7px;min-height:44px;padding:10px 32px 10px 12px}label{font-size:13px}code,pre{overflow-wrap:anywhere;font-family:Consolas,monospace}pre{white-space:pre-wrap;background:#f4f6f2;border-radius:6px;padding:14px;font-size:12px}summary{cursor:pointer;min-height:36px;padding:7px 0}svg{flex-shrink:0}.shell{min-height:100vh;display:flex}.sidebar{background:var(--deep);color:#d3dfd6;flex-direction:column;flex-shrink:0;width:240px;padding:30px 20px 22px;display:flex;position:fixed;top:0;bottom:0;overflow:hidden}.sidebar-scroll{scrollbar-width:thin;flex:1;min-height:0;overflow:hidden auto}.site-qr{color:#f4f6ef;border-top:1px solid #35564e;flex-direction:column;flex-shrink:0;align-items:center;gap:5px;margin-top:16px;padding-top:15px;text-decoration:none;display:flex}.site-qr img{background:#fff;border-radius:4px;width:135px;height:135px;display:block}.site-qr strong{margin-top:3px;font-size:13px;font-weight:500}.site-qr span{color:#c4d4c9;font-size:11px}.brand{color:#f4f6ef;letter-spacing:.5px;align-items:center;gap:12px;padding:0 2px 32px;font-size:18px;font-weight:600;text-decoration:none;display:flex}.brand-mark{color:#dce8bf;letter-spacing:-5px;font-family:Georgia,serif;font-size:38px;line-height:1}.brand-mark span{font-size:28px}.brand small{letter-spacing:1.6px;color:#a6bdb1;margin-top:5px;font-family:Arial,sans-serif;font-size:8px;display:block}.workspace-label{letter-spacing:1px;color:#9fb6aa;justify-content:space-between;padding:14px 10px;font-size:11px;display:flex}.workspace-label span{border:1px solid #527269;border-radius:4px;padding:0 4px;font-size:9px}.sidebar nav{gap:5px;display:grid}.nav-item{text-align:left;color:#b9cec1;border-radius:7px;align-items:center;gap:12px;width:100%;padding:12px 13px;display:flex}.nav-item.active{color:#f4f8f0;background:#31534a;box-shadow:inset 3px 0 #bdd38e}.nav-count{margin-left:auto;font-family:monospace;font-size:11px}.sidebar-section{border-top:1px solid #35564e;margin-top:34px;padding-top:22px}.sidebar-heading{color:#a4bcaf;justify-content:space-between;padding:0 8px 10px;font-size:12px;display:flex}.sidebar-empty{color:#a7bdb0;padding:10px;font-size:12px;line-height:1.9}.sidebar-add{text-align:left;color:#c6d8cc;width:100%;padding:12px 10px;font-size:12px}.dataset-link{text-align:left;border-radius:5px;align-items:center;gap:9px;width:100%;padding:10px 6px;font-size:12px;display:flex}.dataset-link>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dataset-link.selected{background:#2b4c43}.dataset-link small{color:#a3baad;font-size:10px;display:block}.dataset-icon{color:#c8d9b1;border:1px solid #5c7d69;padding:5px;font-size:10px}.sidebar-foot{color:#c4d4c9;margin-top:auto;padding:32px 9px 0;font-size:12px}.sidebar-foot p{color:#aac0b1;margin-top:10px;font-size:11px;line-height:1.8}.sidebar-foot button{color:#d8e5c5;padding:8px 0;font-size:12px}.status-dot{background:#8cb58d;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}.main{width:calc(100% - 240px);min-width:0;margin-left:240px}.topbar{border-bottom:1px solid var(--line);background:#fbfcf8;justify-content:space-between;align-items:center;height:82px;padding:0 34px;display:flex}.breadcrumb{color:#738178;font-size:12px}.breadcrumb span{color:#b0bcb2;margin:0 12px}.top-actions{align-items:center;gap:10px;display:flex}.save-state{color:var(--muted);margin-right:4px;font-size:11px}.button-primary,.button-secondary,.ai-button{white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:13px;font-weight:500;display:inline-flex}.button-primary{background:var(--green);color:#fff}.button-secondary{background:#fff;border:1px solid #cbd5cc}.quiet{padding:8px;font-size:12px}.content{max-width:1600px;margin:auto;padding:34px}.page-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;display:flex}.eyebrow{letter-spacing:1.8px;color:#6b7e6d;margin-bottom:8px;font-family:Arial,sans-serif;font-size:9px;font-weight:600;display:block}.page-heading p{color:var(--muted);margin-top:10px;font-size:12px}.local-badge{white-space:nowrap;border:1px solid #d3ddcf;border-radius:20px;padding:6px 10px;font-size:11px}.notice,.alert,.mock-banner{border-radius:6px;margin-bottom:16px;padding:12px 16px;font-size:12px}.notice{color:#315541;background:#e8f0e8}.alert{color:#913a32;background:#f7e9e5;justify-content:space-between;align-items:center;display:flex}.alert button{margin:-10px -8px;padding:0 10px;font-size:22px}.mock-banner{color:#795f2d;background:#f5eedc;border:1px solid #e5d8b8;gap:14px;display:flex}.mock-banner strong{white-space:nowrap;font-size:11px}.welcome{border:1px solid var(--line);text-align:center;background:#fff;border-radius:12px;padding:40px 40px 0;overflow:hidden}.welcome h2{letter-spacing:-.5px;margin-bottom:12px;font-size:25px;font-weight:500}.welcome>p{color:var(--muted);font-size:13px;line-height:1.9}.welcome .eyebrow{margin-top:10px}.welcome-actions{justify-content:center;gap:12px;margin-top:24px;display:flex}.welcome-graphic{width:250px;height:160px;margin:0 auto;position:relative}.mini-chart{background:linear-gradient(#f9fbf5,#eef3e9);border:1px solid #d8e0d3;border-radius:10px;align-items:end;gap:8px;padding:20px;display:flex;position:absolute;inset:10px 30px 22px;transform:rotate(-5deg);box-shadow:8px 12px #f1f4ed}.mini-chart i{background:#719a7b;border-radius:3px 3px 0 0;width:15px;height:30%}.mini-chart i:nth-child(2){height:55%}.mini-chart i:nth-child(3){background:#b1c293;height:70%}.mini-chart i:nth-child(4){height:45%}.mini-chart i:nth-child(5){background:#285f50;height:90%}.mini-chart i:nth-child(6){height:65%}.mini-chart i:nth-child(7){height:40%}.mini-source{color:#5d7a52;background:#fff;border:1px solid #ccd6c5;border-radius:5px;padding:10px;font-family:monospace;position:absolute;top:38px;left:1px;box-shadow:0 4px 12px #203c3110}.mini-finding{background:#fff;border:1px solid #d8dfd2;border-radius:6px;padding:9px 14px;font-size:11px;position:absolute;bottom:8px;right:-7px;box-shadow:0 4px 12px #203c3110}.domain-cards{text-align:left;border:1px solid var(--line);border-radius:8px;grid-template-columns:repeat(3,1fr);max-width:800px;margin:38px auto 25px;display:grid}.domain-cards>div{border-right:1px solid var(--line);padding:23px}.domain-cards>div:last-child{border:0}.domain-cards span{color:#657e55;background:#edf2e6;border-radius:4px;margin-right:9px;padding:1px 5px;font-family:monospace;font-size:10px;display:inline-block}.domain-cards strong{font-size:13px;font-weight:500}.domain-cards small{color:#7b867b;padding-top:8px;font-size:11px;display:block}.integration-status{border-top:1px solid var(--line);color:var(--muted);background:#fcfcf8;justify-content:center;gap:32px;margin:0 -40px;padding:17px;font-size:11px;display:flex}.scope-panel{border:1px solid var(--line);background:#fff;border-radius:9px;margin-bottom:18px}.scope-title{align-items:center;gap:10px;padding:18px 22px 10px;display:flex}.scope-title .eyebrow{margin:0 5px 0 0;font-size:8px}.scope-title h2{font-size:14px}.tag{color:#5d7456;white-space:nowrap;background:#eef2e9;border-radius:4px;padding:3px 7px;font-size:10px}.scope-fields{flex-wrap:wrap;align-items:end;gap:14px;padding:8px 22px 15px;display:flex}.scope-fields label{color:#69796e;flex:1;gap:5px;min-width:140px;max-width:280px;font-size:11px;display:grid}.scope-fields select{width:100%;font-size:12px}.analysis-action{margin-left:auto}.measure-list{flex-wrap:wrap;align-items:center;gap:8px;padding:0 22px 16px;display:flex}.measure-list>span{color:var(--muted);margin-right:8px;font-size:11px}.measure-choice{cursor:pointer;border:1px solid #dce3d8;border-radius:5px;align-items:center;gap:6px;min-height:38px;padding:5px 9px;font-size:12px;display:flex}.measure-choice:has(input:checked){color:#34583f;background:#eaf1e9;border-color:#aabda5}.measure-choice input{accent-color:var(--green)}.measure-choice small{color:var(--muted);font-size:10px}.measure-choice.excluded{color:#8a7c70;background:#f8f5ef}.scope-foot{color:#788376;background:#fafbf7;border-top:1px solid #e8ece4;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:10px 22px;font-size:10px;display:flex}.scope-foot select{max-width:280px;min-height:30px;padding:4px 25px 4px 9px;font-size:10px}.correlation-fields{align-items:center;gap:10px;padding:0 22px 16px;font-size:11px;display:flex}.correlation-fields select{font-size:11px}.issues{color:#6c7362;margin-bottom:18px;font-size:11px}.issues summary{padding:5px 3px}.issues p{background:#eef1e8;border-left:2px solid #c8d1b9;margin-bottom:3px;padding:6px 13px}.metric-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin:20px 0;display:grid}.metric-card{border:1px solid var(--line);text-align:left;background:#fff;border-radius:8px;flex-direction:column;gap:7px;padding:17px 20px;display:flex}.metric-card>span{color:#6b7e6d;justify-content:space-between;font-size:12px;display:flex}.metric-card>span span{color:#b1bfae}.metric-card strong{letter-spacing:-.8px;font-variant-numeric:tabular-nums;font-size:30px;font-weight:500;line-height:1.4}.metric-card small{color:#6e806e;letter-spacing:0;font-size:10px}.summary-card{background:#edf1e7;border-color:#d6deca}.analysis-grid{grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr);align-items:start;gap:18px;display:grid}.panel{border:1px solid var(--line);background:#fff;border-radius:9px;min-width:0;overflow:hidden}.panel-header{justify-content:space-between;align-items:center;gap:12px;padding:21px 22px 15px;display:flex}.panel-header .eyebrow{margin-bottom:5px;font-size:8px}.panel-header h2{font-size:16px}.panel-header select{max-width:170px;min-height:34px;padding:5px 28px 5px 9px;font-size:11px}.tabs{border-bottom:1px solid #e6ebe1;gap:4px;margin:0 22px;display:flex}.tabs button{color:#7b8579;min-height:42px;padding:8px 15px;font-size:12px;position:relative}.tabs button.active{color:var(--green);font-weight:600}.tabs button.active:after{content:"";background:var(--green);height:2px;position:absolute;bottom:-1px;left:15px;right:15px}.chart{min-width:0;height:320px;margin:0 8px}.chart-empty{height:320px;color:var(--muted);place-items:center;padding:30px;display:grid}.chart-controls{color:#6b7e6d;flex-wrap:wrap;align-items:center;gap:5px;min-height:65px;padding:8px 18px 18px;font-size:10px;display:flex}.chip{background:#fafcf8;border:1px solid #dfe5da;border-radius:5px;min-height:32px;padding:5px 8px;font-size:10px;line-height:1.5}.chip.selected{background:#dce9db;border-color:#91ae88}.insight-panel{padding-bottom:20px}.section-label{letter-spacing:.3px;color:#6b7c68;margin:7px 22px 10px;font-size:11px;font-weight:500}.insight{background:#f0f4eb;border-radius:6px;margin:0 22px 12px;padding:13px 15px;font-size:12px;line-height:2}.inline-number{color:#245d55;text-underline-offset:3px;font-size:inherit;word-break:break-all;min-height:24px;padding:2px 0;font-weight:600;-webkit-text-decoration:underline #a7bda4;text-decoration:underline #a7bda4}.insight small{color:#7a8574;margin-top:8px;font-size:9px;line-height:1.6;display:block}.ai-section{border-top:1px solid #e3e8dd;margin-top:20px;padding-top:14px}.ai-section>.muted,.ai-section>.fineprint,.ai-section>.inline-error{margin:8px 22px 12px;font-size:11px}.ai-button{color:#6c6242;background:#f6f3e9;border:1px solid #dcd6be;justify-content:space-between;width:calc(100% - 44px);margin:0 22px;font-size:12px}.fineprint{color:#84907e;font-size:10px;line-height:1.8}.result-panel{margin-top:20px}.table-scroll{width:100%;overflow:auto}table{border-collapse:collapse;white-space:nowrap;text-align:left;min-width:100%;font-size:11px}th{color:#75816e;background:#f7f9f3;font-size:10px;font-weight:500}td,th{border-bottom:1px solid #edf0e8;padding:13px 20px}tbody tr:hover{background:#fafcf7}td button{font-size:11px}.muted{color:var(--muted);font-size:11px}.text-button{color:var(--green);text-underline-offset:4px;min-height:30px;padding:3px;text-decoration:underline}.network-panel .chart{height:440px}.network-legend{color:#6c7b67;flex-wrap:wrap;gap:20px;padding:0 22px 12px;font-size:10px;display:flex}.network-legend span:before{content:"";background:#245d55;border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.network-legend .legend-dataset:before{background:#749d8f}.network-legend .legend-indicator:before{background:#cf8454}.network-legend .legend-scope:before{background:#496c95}.network-legend .legend-calculation:before{background:#8e7d9e}.network-legend .legend-finding:before{background:#a89651}.node-buttons{border-top:1px solid var(--line);flex-wrap:wrap;gap:6px;padding:16px 22px;display:flex}.selected-node{background:#f2f5ed;border-radius:6px;flex-wrap:wrap;align-items:center;gap:10px;margin:10px 22px;padding:14px;font-size:12px;display:flex}.selected-node p{color:#75816e;width:100%}.no-analysis{text-align:center;padding:45px 30px}.no-analysis p{max-width:600px;color:var(--muted);margin:14px auto;font-size:12px}.source-chips{flex-wrap:wrap;gap:10px;padding:0 22px 18px;display:flex}.source-chips details{border:1px solid var(--line);border-radius:5px;max-width:100%;padding:0 10px;font-size:11px}.source-chips code{font-size:10px}.pagination{justify-content:center;align-items:center;gap:18px;padding:16px;font-size:11px;display:flex}.pagination button{border:1px solid var(--line);border-radius:5px;min-height:36px;padding:5px 12px}.page-footer{letter-spacing:.4px;color:#8a9583;justify-content:space-between;padding:25px 0 0;font-size:9px;display:flex}.page-footer span:first-child{color:#6c7c65}.evidence-dialog{width:min(860px,100vw - 30px);max-height:90vh;color:var(--ink);border:1px solid #d3dece;border-radius:12px;padding:25px;box-shadow:0 20px 80px #102e3340}.evidence-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#112f2d75}.dialog-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:start;gap:15px;margin-bottom:16px;padding-bottom:16px;display:flex}.icon-button{border:1px solid var(--line);border-radius:50%;width:44px;font-size:26px}.evidence-meta>strong{font-size:30px;font-weight:500}.evidence-meta>p{color:var(--muted);margin:6px 0;font-size:12px}.evidence-meta details{font-size:11px}.evidence-meta .tabs{margin:12px 0}.evidence-record{border:1px solid var(--line);border-radius:7px;margin-top:12px;padding:15px}.evidence-record h3{color:#74916d;overflow-wrap:anywhere;font-family:Consolas,monospace;font-size:12px}.evidence-cell{margin-top:12px}.evidence-cell>div{justify-content:space-between;gap:14px;font-size:12px;display:flex}.evidence-cell details{overflow-wrap:anywhere;background:#f5f7f0;border-radius:4px;margin-top:8px;padding:0 10px;font-size:11px}.evidence-cell dl{grid-template-columns:90px 1fr;gap:8px;display:grid}.evidence-cell dd{overflow-wrap:anywhere;margin:0}.warning-text,.inline-error{color:var(--danger)}.transforms{margin-top:15px;font-size:12px}.empty-inline{color:var(--muted);padding:20px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.fatal{max-width:600px;margin:auto;padding:60px}.fatal button{background:var(--green);color:#fff;border-radius:6px;padding:8px 20px}.fatal p{margin:20px 0}@media (width>=1600px){.content{padding:40px 48px}.topbar{padding:0 48px}.chart{height:350px}}@media (width<=1150px){.sidebar{width:210px;padding-inline:15px}.main{width:calc(100% - 210px);margin-left:210px}.content{padding:25px}.topbar{padding:0 25px}.analysis-grid{grid-template-columns:1fr}.metric-grid{gap:10px}.metric-card{padding:14px}.metric-card strong{font-size:25px}.page-heading .local-badge,.save-state{display:none}}@media (width<=780px){.sidebar{width:100%;padding:15px 20px;display:block;position:static}.shell{display:block}.brand{padding:0;font-size:16px}.brand-mark{font-size:29px}.brand-mark span{font-size:23px}.workspace-label,.sidebar-section,.sidebar-foot,.site-qr{display:none}.sidebar-scroll{overflow:visible}.sidebar nav{margin-top:18px;display:flex}.nav-item{justify-content:center;gap:6px;padding:9px 5px;font-size:12px}.nav-item svg{width:16px}.main{width:100%;margin:0}.topbar{flex-wrap:wrap;gap:15px;height:auto;min-height:70px;padding:13px 20px}.breadcrumb{font-size:10px}.top-actions{gap:7px}.top-actions button{padding:7px 10px;font-size:11px}.top-actions svg{width:16px}.content{padding:23px 18px}.page-heading{margin-bottom:22px}h1{font-size:25px}.page-heading p{font-size:11px}.welcome{padding:25px 20px 0}.welcome h2{font-size:22px}.welcome-actions{flex-wrap:wrap}.domain-cards{grid-template-columns:1fr;margin-top:28px}.domain-cards>div{border-right:0;border-bottom:1px solid var(--line);padding:14px 20px}.domain-cards small{margin-left:12px;padding:0;display:inline-block}.integration-status{flex-wrap:wrap;gap:8px;margin:0 -20px;font-size:9px}.metric-grid{grid-template-columns:repeat(2,1fr)}.scope-title{flex-wrap:wrap;padding:16px}.scope-title .eyebrow{width:100%;margin-bottom:4px}.scope-fields{padding:6px 16px 12px}.scope-fields label{max-width:none}.measure-list{padding:0 16px 14px}.scope-foot{padding:10px 16px}.analysis-action,.analysis-action button{width:100%}.scope-foot select{max-width:100%}.mock-banner{flex-direction:column;gap:4px}.panel-header{align-items:start;padding:18px 16px}.panel-header h2{font-size:15px}.panel-header .muted{max-width:130px;font-size:10px}.panel-header select{max-width:125px}.tabs{margin:0 16px}.chart{height:280px}.chart-controls{padding-inline:15px}.page-footer{flex-direction:column;gap:15px}.network-panel .chart{height:340px}.evidence-dialog{padding:18px}.dialog-header h2{font-size:17px}.correlation-fields{flex-wrap:wrap}.correlation-fields select{max-width:43%}.node-buttons{padding:12px}.chip{min-height:36px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
