/* DataHub */
.dh-tabs{display:flex;gap:6px;overflow-x:auto;margin:-4px 0 22px;padding-bottom:2px}
.dh-tabs button{flex:0 0 auto;padding:9px 13px;border-radius:7px;font-size:11px;color:#607477;border:1px solid transparent;background:transparent}
.dh-tabs button:hover{background:#edf4f4;color:#035a64}
.dh-tabs button.active{background:#fff;border-color:#d6e4e5;color:#035a64;box-shadow:0 2px 7px #063f4608;font-weight:600}
.dh-hero{display:flex;justify-content:space-between;align-items:center;gap:35px;padding:28px 30px;border:1px solid #dbe7e8;border-radius:12px;background:linear-gradient(120deg,#fff 0%,#f6fafa 100%);margin-bottom:18px}
.dh-hero h2{font-size:25px;font-weight:550;letter-spacing:-.7px;margin-bottom:8px}
.dh-hero p{max-width:630px;color:var(--muted);font-size:12px;margin-bottom:17px}
.dh-model{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end;max-width:360px}
.dh-model span{padding:8px 10px;border-radius:7px;background:#eaf2f2;color:#174f56;font-size:10px;font-weight:600}
.dh-model b{color:#8bacb0;font-weight:500}
.dh-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}
.dh-kpi{display:flex;gap:13px;align-items:center;background:#fff;border:1px solid #dfe8e9;border-radius:10px;padding:17px 18px;min-height:94px}
.dh-kpi-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:9px;background:#edf5f5;color:#035a64;flex:0 0 auto}
.dh-kpi-icon svg{width:17px;height:17px}
.dh-kpi strong{display:block;font-size:23px;font-weight:550;letter-spacing:-.5px;color:#173d42;line-height:1}
.dh-kpi span:not(.dh-kpi-icon){display:block;margin-top:5px;font-size:11px;font-weight:600;color:#31565b}
.dh-kpi small{display:block;color:#85999c;font-size:9px;margin-top:4px}
.dh-overview-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:18px}
.dh-step{display:grid;grid-template-columns:28px 1fr auto;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}
.dh-step:last-child{border-bottom:0}
.dh-step>span:first-child{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#e8f1f2;color:#035a64;font-size:10px;font-weight:700}
.dh-step strong,.dh-source strong{display:block;font-size:11px;font-weight:600;color:#23494e}
.dh-step small,.dh-source small{display:block;font-size:10px;color:#82989b;margin-top:4px;line-height:1.5}
.dh-source-list{padding-top:12px;padding-bottom:12px}
.dh-source{display:grid;grid-template-columns:32px 1fr auto;gap:11px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.dh-source:last-child{border-bottom:0}
.dh-source-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:7px;background:#f0f5f5;color:#52777c}
.dh-source-icon svg{width:14px;height:14px}
.dh-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:13px}
.dh-toolbar .input-icon-wrap{max-width:430px;flex:1}
.dh-readonly{display:flex;align-items:center;gap:6px;color:#7d9295;font-size:10px;white-space:nowrap}
.dh-readonly svg{width:13px;height:13px}
.dh-empty{display:flex;min-height:315px;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:38px}
.dh-empty-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:12px;background:#edf5f5;color:#035a64;margin-bottom:15px}
.dh-empty-icon svg{width:20px;height:20px}
.dh-empty h2{font-size:17px;margin-bottom:7px}
.dh-empty p{max-width:490px;color:var(--muted);font-size:11px;margin-bottom:17px}
.dh-callout{display:flex;flex-direction:column;gap:5px;padding:15px 16px;border-radius:8px;background:#f2f6f6;border:1px solid #dce7e8;margin-bottom:12px}
.dh-callout strong{font-size:11px;color:#234d52}
.dh-callout span{font-size:10px;line-height:1.6;color:#71878a}
@media(max-width:1050px){.dh-kpis{grid-template-columns:repeat(2,1fr)}.dh-overview-grid{grid-template-columns:1fr}.dh-hero{align-items:flex-start}.dh-model{max-width:300px}}
@media(max-width:700px){.dh-hero{padding:22px;display:block}.dh-model{justify-content:flex-start;margin-top:18px;max-width:none}.dh-kpis{grid-template-columns:1fr 1fr}.dh-toolbar{align-items:stretch;flex-direction:column}.dh-readonly{white-space:normal}.dh-step{grid-template-columns:28px 1fr}.dh-step .badge{grid-column:2}.dh-source{grid-template-columns:30px 1fr}.dh-source .badge{grid-column:2}.dh-kpi{padding:14px}.dh-kpi strong{font-size:20px}}
@media(max-width:430px){.dh-kpis{grid-template-columns:1fr}.dh-model b{display:none}.dh-model span{font-size:9px}}
