#chart.visualization-studio{display:block;min-height:760px;padding:0;background:#f4f6f9;color:#263248;text-align:left}.template-library{padding:18px;border-bottom:1px solid #dfe4ec;background:#fff}.template-library-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px}.template-library-head>div{display:grid;gap:3px}.template-library-head strong{font-size:14px}.template-library-head span{color:#8b95a5;font-size:10px}.template-library-head label{display:flex;width:min(260px,34vw);height:36px;align-items:center;gap:8px;padding:0 11px;border:1px solid #dce2eb;border-radius:9px;background:#f8fafc}.template-library-head label span{font-size:16px}.template-library-head input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:#354158;font:inherit}.smart-template-row{display:grid;grid-template-columns:120px repeat(5,minmax(130px,1fr));gap:9px;margin-bottom:13px;padding:11px;border:1px solid #dce5fb;border-radius:12px;background:#f7f9ff}.smart-template-row>b{align-self:center;color:#4662bd;font-size:11px}.smart-template,.template-card{min-width:0;overflow:hidden;border:1px solid #dfe4ec;border-radius:10px;background:#fff;text-align:left;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.smart-template{display:grid;grid-template-columns:55px 1fr;grid-template-rows:auto auto;align-items:center;gap:2px 8px;padding:7px}.smart-template>span{grid-row:1/3}.smart-template svg{display:block;width:55px;height:42px}.smart-template strong{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.smart-template small{overflow:hidden;color:#8a94a5;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.smart-template:hover,.template-card:hover{z-index:1;border-color:#87a4ef;box-shadow:0 9px 22px rgba(47,76,154,.14);transform:translateY(-2px)}.template-card-grid{display:grid;grid-template-columns:repeat(10,minmax(98px,1fr));gap:9px}.template-card{position:relative;padding:7px}.template-card>span{display:grid;height:72px;margin-bottom:6px;place-items:center;border-radius:7px;background:#f7f9fc}.template-card svg{width:100%;height:68px}.template-card strong,.template-card small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.template-card strong{font-size:10px}.template-card strong em{margin-left:5px;padding:2px 4px;border-radius:4px;background:#eef8f4;color:#18815d;font-size:7px;font-style:normal}.template-card small{margin-top:3px;color:#8b95a5;font-size:8px}.template-card[hidden]{display:none}.template-card svg,.smart-template svg,.template-empty-preview svg,.template-canvas-empty svg{overflow:visible}.sk-grid{fill:none;stroke:#dce3ed;stroke-width:1}.sk-line{fill:none;stroke:#315eea;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.sk-ring{stroke-linecap:butt}.sk-a{fill:#315eea;stroke:#315eea}.sk-b{fill:#63a7f5;stroke:#63a7f5}.sk-c{fill:#8b65d9;stroke:#8b65d9}.sk-d{fill:#e05f86;stroke:#e05f86}.sk-race-one,.sk-race-two,.sk-race-three{transform-origin:left;animation:templateRacePreview 2.4s ease-in-out infinite alternate}.sk-race-two{animation-delay:.22s}.sk-race-three{animation-delay:.44s}@keyframes templateRacePreview{from{transform:scaleX(.35)}to{transform:scaleX(1)}}
.visualization-editor{display:grid;grid-template-columns:minmax(0,1fr) 292px;min-height:620px;align-items:start}.visualization-studio .manual-canvas{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(460px,100%),1fr));gap:18px;min-width:0;padding:20px;background:#f3f5f8}.template-canvas-empty{display:grid;min-height:430px;grid-column:1/-1;align-content:center;justify-items:center;padding:42px;border:1px dashed #cbd4e1;border-radius:15px;background:#fff;text-align:center}.template-canvas-empty>span{width:210px}.template-canvas-empty svg{width:210px;height:130px;opacity:.68}.template-canvas-empty strong{margin-top:18px;font-size:15px}.template-canvas-empty p{max-width:420px;margin:7px 0 0;color:#8893a4;font-size:11px;line-height:1.6}.visualization-studio .manual-chart-card{min-width:0;min-height:500px;padding:0;border:1px solid #dfe4ec;border-radius:14px;background:#fff;box-shadow:0 9px 26px rgba(34,46,70,.07);resize:both;overflow:auto;contain:layout paint style;content-visibility:auto}.visualization-studio .manual-chart-card.active{border-color:#6f91ed;box-shadow:0 0 0 2px rgba(64,101,221,.12),0 16px 34px rgba(34,55,112,.12)}.visualization-studio .manual-chart-card>header{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;padding:13px 15px;border-bottom:1px solid #e7ebf1;background:rgba(255,255,255,.96);backdrop-filter:blur(10px)}.visualization-studio .manual-chart-card>header>div{display:grid;min-width:0;gap:3px}.visualization-studio .manual-chart-card>header span{color:#8994a5;font-size:8px}.visualization-studio .manual-chart-card>header input{min-width:0;border:0;outline:0;color:#263248;font-size:13px;font-weight:700}.visualization-studio .manual-chart-card>header button,.inspector-title>button{width:28px;height:28px;border:0;border-radius:7px;background:#f3f5f8;color:#778397;font-size:18px}.template-field-slots{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:8px;padding:12px 14px;border-bottom:1px solid #edf0f4;background:#fafbfc}.template-slot{min-height:54px;padding:8px 9px;border:1px dashed #cbd4df;border-radius:9px;background:#fff}.template-slot.drag-over{border-color:#315eea;background:#f1f5ff;box-shadow:0 0 0 2px rgba(49,94,234,.1)}.template-slot b{display:block;margin-bottom:5px;color:#5e6b80;font-size:8px}.template-slot>span{display:flex;flex-wrap:wrap;gap:5px;color:#9aa3b1;font-size:8px}.template-slot em{display:inline-flex;align-items:center;gap:3px;max-width:100%;padding:4px 6px;border-radius:6px;background:#edf2ff;color:#4161bd;font-style:normal}.template-slot em button{border:0;background:transparent;color:#7184be}.visualization-studio .manual-card-preview{display:grid;min-height:315px;padding:18px;place-items:stretch;overflow:auto}.template-empty-preview{display:grid;min-height:285px;align-content:center;justify-items:center;color:#8c96a7;text-align:center}.template-empty-preview>svg{width:min(280px,76%);height:165px;opacity:.5}.template-empty-preview>div{display:grid;gap:4px}.template-empty-preview strong{color:#536074;font-size:13px}.template-empty-preview span{font-size:10px}.template-empty-preview small{font-size:9px}.template-kpi-skeleton{display:grid;min-width:190px;padding:22px;border:1px solid #e3e8f0;border-radius:12px;background:#f8faff}.template-kpi-skeleton strong{margin:7px 0;color:#315eea;font-size:30px}
.manual-inspector{position:sticky;top:12px;max-height:calc(100vh - 46px);overflow:auto;border-left:1px solid #dfe4ec;background:#fff}.manual-inspector.empty{display:grid;min-height:620px;align-content:center;justify-items:center;padding:30px;color:#8994a5;text-align:center}.inspector-title{position:sticky;top:0;z-index:3;display:flex;align-items:flex-start;justify-content:space-between;padding:17px;border-bottom:1px solid #e4e8ef;background:#fff}.inspector-title>div{display:grid;gap:3px}.inspector-title small{color:#929cab;font-size:8px}.inspector-title strong{font-size:13px}.inspector-title span{color:#7f8a9c;font-size:9px;line-height:1.5}.inspector-search{display:flex;height:36px;align-items:center;gap:7px;margin:12px;padding:0 10px;border:1px solid #dfe4ec;border-radius:8px;background:#f8fafc}.inspector-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;font:inherit}.manual-inspector details{border-top:1px solid #e5e9ef}.manual-inspector details[hidden]{display:none}.manual-inspector summary{display:flex;min-height:43px;align-items:center;justify-content:space-between;padding:0 14px;cursor:pointer;color:#435067;font-size:10px;font-weight:700;list-style:none}.manual-inspector summary::after{content:'＋';color:#8792a3}.manual-inspector details[open] summary::after{content:'－'}.manual-inspector summary em{margin-left:auto;margin-right:8px;padding:3px 5px;border-radius:5px;background:#eaf7f2;color:#248263;font-size:7px;font-style:normal}.manual-inspector details>label,.manual-inspector details>div:not(.inspector-slots){display:grid;gap:5px;margin:0 13px 11px;color:#657186;font-size:8px}.manual-inspector select,.manual-inspector input[type=range]{width:100%}.manual-inspector select{height:32px;padding:0 8px;border:1px solid #dce2ea;border-radius:7px;background:#fff;color:#455168;font-size:9px}.inspector-slots{display:grid;gap:7px;padding:0 12px 12px}.inspector-toggle{grid-template-columns:16px 1fr!important;align-items:center}.inspector-toggle input{accent-color:#315eea}.palette-options{grid-template-columns:repeat(4,1fr)!important}.palette-options button{display:flex;height:31px;align-items:center;justify-content:center;gap:2px;border:1px solid #dce2ea;border-radius:7px;background:#fff}.palette-options button.active{border-color:#315eea;box-shadow:0 0 0 1px #315eea}.palette-options i{width:9px;height:18px;border-radius:3px;background:#315eea}.palette-options i:nth-child(2){background:#63a7f5}.palette-options i:nth-child(3){background:#8b65d9}
.template-donut-chart{display:grid;grid-template-columns:minmax(210px,1fr) minmax(110px,.55fr);align-items:center;gap:15px}.template-donut-chart svg{width:100%;max-height:310px}.template-donut-chart text{fill:#8792a3;font-size:7px}.template-donut-chart .donut-total{fill:#263248;font-size:10px;font-weight:700}.template-donut-chart>div{display:grid;gap:7px}.template-donut-chart>div span{display:flex;align-items:center;gap:6px;color:#687489;font-size:9px}.template-donut-chart>div i{width:8px;height:8px;border-radius:50%}.template-scatter-chart{display:grid;min-width:360px;height:100%;grid-template-rows:minmax(260px,1fr) auto}.template-scatter-chart svg{width:100%;height:100%}.template-scatter-chart>div{display:flex;justify-content:space-between;color:#7e899a;font-size:9px}.template-heatmap-chart{display:grid;min-width:420px;grid-template-columns:82px 1fr;grid-template-rows:1fr 54px;gap:5px}.heat-y{display:grid}.heat-y span{align-self:center;overflow:hidden;color:#6e7a8c;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.heat-cells{display:grid;grid-template-columns:repeat(var(--heat-cols),minmax(18px,1fr));gap:3px}.heat-cells i{min-height:25px;border-radius:3px;background:color-mix(in srgb,#315eea calc(var(--heat)*92%),#edf2fb)}.heat-x{display:grid;grid-column:2;grid-template-columns:repeat(var(--heat-cols),1fr)}.heat-x span{align-self:start;overflow:hidden;color:#748094;font-size:7px;text-overflow:ellipsis;transform:rotate(35deg);transform-origin:left top;white-space:nowrap}.template-treemap-chart{display:flex;min-width:360px;min-height:300px;flex-wrap:wrap;gap:4px}.template-treemap-chart>div{display:grid;min-width:80px;min-height:76px;align-content:end;padding:9px;border-radius:6px;color:#fff}.template-treemap-chart strong{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.template-treemap-chart span{font-size:8px;opacity:.8}.template-race-chart{display:grid;min-width:420px;gap:14px}.race-frame{display:grid;gap:7px}.race-frame>strong{justify-self:end;color:#315eea;font-size:22px}.race-frame>div{display:grid;grid-template-columns:22px minmax(75px,120px) 1fr 52px;align-items:center;gap:7px;font-size:8px}.race-frame>div>span{color:#a1a9b5;text-align:center}.race-frame>div>b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.race-frame>div>i{height:14px;overflow:hidden;border-radius:3px;background:#edf0f5}.race-frame>div em{display:block;height:100%;transform-origin:left;animation:raceBarEnter .45s cubic-bezier(.2,.75,.3,1)}.race-frame>div small{text-align:right}.template-race-chart>button{justify-self:center;padding:8px 14px;border:1px solid #cbd7f4;border-radius:8px;background:#f3f6ff;color:#315bbd;font-size:9px}@keyframes raceBarEnter{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:1280px){.template-card-grid{grid-template-columns:repeat(5,minmax(100px,1fr))}.smart-template-row{grid-template-columns:100px repeat(3,1fr)}.smart-template:nth-of-type(n+4){display:none}.visualization-editor{grid-template-columns:minmax(0,1fr) 270px}}@media(max-width:900px){.visualization-editor{grid-template-columns:1fr}.manual-inspector{position:relative;top:auto;max-height:none;border-top:1px solid #dfe4ec;border-left:0}.template-card-grid{grid-template-columns:repeat(3,1fr)}.smart-template-row{grid-template-columns:1fr 1fr}.smart-template-row>b{grid-column:1/-1}}
.quick-smart-templates{margin-bottom:16px;padding:15px;border:1px solid #dce5f7;border-radius:14px;background:linear-gradient(145deg,#f8faff,#fff)}.quick-smart-head{display:grid;gap:3px;margin-bottom:11px}.quick-smart-head strong{color:#34435d;font-size:13px}.quick-smart-head span{color:#8390a3;font-size:9px}.quick-smart-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:9px}.quick-smart-grid article{display:grid;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px;border:1px solid #e2e7ef;border-radius:10px;background:#fff}.quick-smart-grid article>span{display:grid;height:58px;place-items:center;border-radius:7px;background:#f6f8fc}.quick-smart-grid svg{width:68px;height:52px}.quick-smart-grid article>div{display:grid;min-width:0;gap:3px}.quick-smart-grid strong{font-size:10px}.quick-smart-grid strong em{margin-left:4px;padding:2px 4px;border-radius:4px;background:#eaf7f1;color:#18815d;font-size:7px;font-style:normal}.quick-smart-grid small,.quick-smart-grid p{overflow:hidden;margin:0;color:#8490a2;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.quick-smart-grid button{padding:7px 9px;border:1px solid #cbd7f4;border-radius:7px;background:#f2f5ff;color:#315bbd;font-size:8px;white-space:nowrap}
.template-treemap-children{display:flex;flex-wrap:wrap;gap:3px;width:100%;align-self:stretch}
.template-treemap-children>div{min-width:70px;padding:6px;border:1px solid rgba(255,255,255,.6);background:rgba(255,255,255,.12)}
.manual-kpi-records{max-height:220px;overflow:auto;font-size:12px;line-height:1.6}
