.sp-dialog{width:min(1480px,96vw);max-width:96vw;max-height:94vh;padding:0;border:1px solid #dce3ee;border-radius:24px;background:#f2f5fa;color:#22304b;font-family:var(--ui-font,Arial,sans-serif)}
.sp-dialog::backdrop{background:#091325b8;backdrop-filter:blur(6px)}
.sp-hero{padding:28px 32px;background:linear-gradient(115deg,#142443,#263e64 65%,#30686d);color:white;display:flex;justify-content:space-between;align-items:center;gap:20px}.sp-hero h2{font-size:30px;margin:7px 0}.sp-hero p{color:#d5e4ef;margin:0}.sp-hero small{letter-spacing:3px;color:#97dfda;font-weight:700}.sp-hero button{color:white!important;background:#ffffff12!important;border-color:#ffffff50!important}
.sp-dialog button,.sp-dialog input,.sp-dialog select{font:inherit;border:1px solid #ccd6e3;background:white;color:#25334f;border-radius:10px;padding:10px 13px}.sp-dialog button{cursor:pointer}.sp-dialog button:hover{border-color:#3d8f90}.sp-dialog button:focus-visible{outline:3px solid #76bbcc;outline-offset:2px}.sp-dialog button:disabled{opacity:.5;cursor:default}.sp-content{padding:24px 30px}.sp-filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.sp-filters label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700}.sp-filters input{width:148px}.sp-filters select{max-width:260px}.sp-filters .sp-refresh{background:#287e80;color:white}.sp-status{font-size:12px;color:#61728b;margin:16px 0}.sp-actions{margin-left:auto;display:flex;gap:8px;align-items:center}.sp-actions button{font-size:12px}.sp-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:18px 0}.sp-kpi{background:white;border-radius:17px;padding:20px;border:1px solid #e2e8f0}.sp-kpi:first-child{background:#e3f2ef;border-color:#c7e2dd}.sp-kpi p{margin:0;color:#536681;font-size:13px}.sp-kpi strong{display:block;font-size:27px;font-variant-numeric:tabular-nums;margin:12px 0}.sp-kpi small{font-size:12px;color:#63728a}.sp-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:18px}.sp-panel{background:white;border:1px solid #e2e8f0;border-radius:18px;padding:22px;min-width:0}.sp-panel h3{margin:0 0 5px;font-size:18px}.sp-caption{margin:0 0 18px;color:#6b7b91;font-size:12px;line-height:1.6}.sp-wide{grid-column:1/-1}.sp-insights{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0}.sp-insight{padding:17px;border-radius:13px;background:#e8eef7;border-left:3px solid #687eb0;font-size:13px;line-height:1.6}.sp-insight b{display:block;color:#273f65;margin-bottom:5px}.sp-trend{width:100%;height:260px;display:block}.sp-trend text{font:12px Arial;fill:#66768e}.sp-legend{display:flex;gap:22px;font-size:12px;color:#64728b}.sp-legend span:first-child{color:#257d80}.sp-rank{display:flex;flex-direction:column;gap:13px}.sp-rank button{border:0;background:#f5f7fb;text-align:left;padding:12px;border-radius:10px}.sp-rank .sp-row{display:flex;justify-content:space-between;gap:14px;align-items:center;font-size:13px}.sp-track{height:6px;background:#e6ebf2;margin-top:9px;border-radius:5px;overflow:hidden}.sp-track i{display:block;height:100%;background:#3d9192;border-radius:5px}.sp-rank small{display:block;color:#6c7d92;margin-top:7px}.sp-donut-wrap{display:flex;align-items:center;gap:26px;flex-wrap:wrap}.sp-donut{width:180px;height:180px;border-radius:50%;display:grid;place-items:center;flex-shrink:0}.sp-donut-center{background:white;border-radius:50%;width:128px;height:128px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:13px;color:#5c6d83}.sp-donut-center b{font-size:24px;color:#253650;margin-bottom:4px}.sp-category-list{flex:1;min-width:160px}.sp-category-list p{display:flex;align-items:center;gap:8px;font-size:13px;margin:14px 0}.sp-category-list i{width:9px;height:9px;border-radius:50%;flex-shrink:0}.sp-category-list strong{margin-left:auto}.sp-heat-scroll{overflow:auto}.sp-heat{min-width:640px;display:grid;grid-template-columns:45px repeat(24,1fr);gap:4px;align-items:center}.sp-heat span{font-size:11px;color:#62738d}.sp-heat button{padding:0;border:0;border-radius:4px;height:23px;min-width:17px}.sp-foot{font-size:12px;color:#62738d;line-height:1.6;margin:18px 0 0}.sp-detail{margin-top:13px;min-height:20px;font-size:13px;color:#425b78}.sp-empty{padding:30px;text-align:center;color:#64748b}
.sp-chart-scroll{overflow-x:auto}.sp-trend{min-width:600px}.sp-bridge-row{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid #e8edf4;font-size:13px}.sp-bridge-row strong{font-variant-numeric:tabular-nums;color:#287d80}
@media print{.sp-rank{max-height:none!important;overflow:visible!important}.sp-heat button:disabled{opacity:1}.sp-hero{print-color-adjust:exact}.sp-panel>button{display:none}.sp-trend{min-width:0}}
@media(max-width:900px){.sp-kpis{grid-template-columns:repeat(2,1fr)}.sp-grid{grid-template-columns:1fr}.sp-insights{grid-template-columns:1fr}.sp-content{padding:18px}.sp-hero{padding:22px}.sp-actions{margin-left:0}.sp-kpi strong{font-size:23px}}
@media print{.sp-dialog{width:100%;max-width:none;max-height:none;overflow:visible;border:0}.sp-filters,.sp-hero button{display:none!important}.sp-panel,.sp-kpi{break-inside:avoid}.sp-content{padding:10px}.sp-grid{display:block}.sp-panel{margin-bottom:12px}.sp-heat button{-webkit-print-color-adjust:exact;print-color-adjust:exact}.sp-donut{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
