.block-chart { position:relative; width:100%; min-width:0; color:#111; }
.block-chart button,.block-chart input,.block-chart select { font:inherit; }
.livia-chart-header { display:flex; align-items:center; justify-content:space-between; gap:22px; padding-bottom:11px; border-bottom:1px solid #d2d2d2; }
.livia-chart-title-wrap { flex:1 1 280px; min-width:190px; min-height:31px; display:flex; align-items:center; gap:8px; }
.livia-chart-title { flex:0 1 330px; min-width:120px; height:31px; padding:3px 5px; border:0; border-radius:6px; outline:0; background:transparent; color:#707070; font-size:20px; font-weight:600; line-height:25px; letter-spacing:normal; }
.livia-chart-title:focus { background:#f5f5f5; color:#111; }
.livia-chart-value-kind { flex:0 0 auto; height:21px; display:inline-flex; align-items:center; gap:4px; padding:0 7px; border:1px solid #e5e5e5; border-radius:999px; background:#fafafa; color:#888; font-size:10px; letter-spacing:.02em; white-space:nowrap; }
.livia-chart-value-kind[hidden] { display:none; }.livia-chart-value-kind strong { color:#5f5f5f; font-size:11px; font-weight:600; }
.livia-chart-actions { display:flex; align-items:center; gap:4px; }
.livia-chart-types { height:31px; display:flex; align-items:center; gap:1px; padding:2px; border:1px solid #e8e8e8; border-radius:9px; background:#fff; }
.livia-chart-types button,.livia-chart-icon-button,.livia-chart-data-button { height:27px; display:flex; align-items:center; justify-content:center; padding:0; border:0; border-radius:6px; background:transparent; color:#6f6f6f; cursor:pointer; }
.livia-chart-types button { position:relative; width:28px; }.livia-chart-types button.is-selected { background:#f3f1fa; color:#8e3c93; }
.livia-chart-types button.is-selected::after { content:""; position:absolute; right:7px; bottom:2px; left:7px; height:1px; background:#b316ab; }
.livia-chart-types svg,.livia-chart-icon-button svg,.livia-chart-data-button svg { width:14px; height:14px; fill:none; stroke:currentColor; stroke-width:1.2; stroke-linecap:round; stroke-linejoin:round; }
.livia-chart-types [data-chart-type="pie"] svg { fill:none; }.livia-chart-icon-button .dots circle { fill:currentColor; stroke:none; }
.livia-chart-icon-button { width:29px; }.livia-chart-data-button { gap:6px; padding:0 7px; font-size:12px; }
.livia-chart-types button:hover,.livia-chart-icon-button:hover,.livia-chart-data-button:hover { background:#f3f3f3; }
.livia-chart-divider { width:1px; height:21px; margin:0 5px; background:#e2e2e2; }
.livia-chart-meta { min-height:36px; display:flex; align-items:center; gap:8px; padding-top:9px; color:#666; font-size:12px; }
.livia-chart-series,.livia-chart-filter-chip { display:inline-flex; align-items:center; gap:7px; }.livia-chart-series { padding:5px 9px; border-radius:999px; background:#f4f3fb; color:#5e5071; }
.livia-chart-series i { width:7px; height:7px; border-radius:50%; background:#2797d2; box-shadow:0 0 0 2px #fff,0 0 0 3px #ff6c3e; }
.livia-chart-filter-chip::before { content:"·"; color:#bbb; }.livia-chart-filter-clear { width:17px; height:17px; display:grid; place-items:center; padding:0; border:0; border-radius:50%; background:#ededed; color:#777; line-height:1; cursor:pointer; }
.livia-chart-filter-clear[hidden] { display:none; }
.livia-chart-stage { width:100%; min-height:330px; overflow:hidden; --chart-color:#2797d2; --chart-line-width:2; }.livia-chart-stage svg { display:block; width:100%; height:330px; overflow:visible; }
.livia-chart-grid { stroke:#e9e9e9; stroke-width:1; }.livia-chart-axis { fill:#8b8b8b; font-size:12px; }.livia-chart-line { fill:none; stroke:var(--chart-color); stroke-width:var(--chart-line-width); stroke-linecap:round; stroke-linejoin:round; }.livia-chart-point { fill:#fff; stroke:var(--chart-color); stroke-width:2; cursor:pointer; transition:r 140ms ease; }.livia-chart-point:hover,.livia-chart-point:focus { r:6; outline:0; }.livia-chart-bar { fill:var(--chart-color); opacity:.72; }.livia-chart-value { fill:#5f5f5f; font-size:12px; }.livia-chart-pie-label { fill:#555; font-size:12px; }.livia-chart-center-big { fill:#111; font-size:20px; font-weight:600; }.livia-chart-center-small { fill:#888; font-size:11px; }
.livia-chart-empty { min-height:330px; display:grid; place-content:center; gap:5px; text-align:center; }.livia-chart-empty span { color:#626262; font-size:14px; }.livia-chart-empty small { color:#a0a0a0; font-size:12px; }
.livia-chart-footer { min-height:43px; display:flex; align-items:center; gap:9px; border-top:1px solid #eeeeee; color:#858585; font-size:12px; }.livia-chart-footer strong { color:#222; font-size:14px; font-weight:600; }.livia-chart-trend { padding:3px 7px; border-radius:999px; background:#eaf8ee; color:#19853b; font-weight:600; }.livia-chart-trend.is-negative { background:#fff0ef; color:#b42318; }
.livia-chart-point-popover { position:absolute; z-index:24; min-width:112px; padding:8px 10px; border:1px solid #e4e4e4; border-radius:9px; background:#fff; box-shadow:0 8px 24px rgb(0 0 0 / 9%); pointer-events:none; transform:translate(-50%,-100%); }.livia-chart-point-popover[hidden] { display:none; }.livia-chart-point-popover span,.livia-chart-point-popover strong { display:block; }.livia-chart-point-popover span { margin-bottom:2px; color:#8a8a8a; font-size:11px; }.livia-chart-point-popover strong { font-size:13px; font-weight:550; }
.livia-chart-panel { position:absolute; z-index:23; top:38px; right:0; width:min(280px,calc(100vw - 32px)); max-height:min(410px,68vh); overflow:auto; padding:9px; border:1px solid #e2e2e2; border-radius:9px; background:#fff; box-shadow:0 10px 28px rgb(0 0 0 / 9%); scrollbar-width:thin; scrollbar-color:#d4d4d4 transparent; }.livia-chart-panel[hidden] { display:none; }
.livia-chart-panel-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:9px; }.livia-chart-panel-head strong { font-size:14px; font-weight:600; }.livia-chart-panel-head button { width:24px; height:24px; padding:0 0 2px; border:0; border-radius:50%; background:transparent; color:#777; font-size:17px; line-height:1; cursor:pointer; }
.livia-chart-source-switch,.livia-chart-filter-modes { display:grid; gap:2px; padding:3px; margin-bottom:12px; border-radius:9px; background:#f3f3f3; }.livia-chart-source-switch { grid-template-columns:1fr 1fr; }.livia-chart-filter-modes { grid-template-columns:repeat(3,1fr); }
.livia-chart-source-switch button,.livia-chart-filter-modes button { height:27px; padding:0 5px; border:0; border-radius:6px; background:transparent; color:#737373; font-size:11px; cursor:pointer; }.livia-chart-source-switch button[aria-selected="true"],.livia-chart-filter-modes button[aria-selected="true"] { background:#fff; color:#222; box-shadow:0 1px 3px rgb(0 0 0 / 8%); }
.livia-chart-data-head,.livia-chart-data-row { display:grid; grid-template-columns:1fr 1fr 22px; gap:6px; align-items:center; }.livia-chart-data-head { padding:0 5px 5px; color:#999; font-size:11px; }.livia-chart-data-row { margin-bottom:5px; }.livia-chart-data-row input,.livia-chart-panel input,.livia-chart-panel select { width:100%; height:30px; padding:0 8px; border:1px solid #ddd; border-radius:7px; background:#fff; color:#222; font-size:12px; outline:0; }.livia-chart-data-row button { width:22px; height:22px; padding:0 0 2px; border:0; border-radius:50%; background:transparent; color:#aaa; line-height:1; cursor:pointer; }
.livia-chart-select { position:relative; min-width:0; width:100%; }
.livia-chart-native-select { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; overflow:hidden; border:0!important; opacity:0; pointer-events:none; }
.livia-chart-select-trigger { width:100%; height:30px; display:flex; align-items:center; justify-content:space-between; gap:8px; padding:0 8px; border:1px solid #dcdcdc; border-radius:7px; background:#fff; color:#303030; font-size:12px; font-weight:500; text-align:left; cursor:pointer; }
.livia-chart-select-trigger:hover,.livia-chart-select-trigger[aria-expanded="true"] { border-color:#bdbdbd; background:#fafafa; }
.livia-chart-select-trigger:focus-visible { outline:0; box-shadow:0 0 0 2px rgb(179 22 171 / 10%); }
.livia-chart-select-trigger span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.livia-chart-select-trigger svg { width:14px; height:14px; flex:0 0 auto; fill:none; stroke:#777; stroke-width:1.3; stroke-linecap:round; stroke-linejoin:round; }
.livia-chart-select-list { position:absolute; z-index:60; top:calc(100% + 4px); right:0; left:0; min-width:max(100%,156px); max-height:174px; overflow:auto; padding:4px; border:1px solid #dedede; border-radius:9px; background:#fff; box-shadow:0 10px 26px rgb(0 0 0 / 10%); scrollbar-width:thin; scrollbar-color:#d3d3d3 transparent; }
.livia-chart-select-list[hidden] { display:none; }
.livia-chart-select-option { width:100%; min-height:28px; display:flex; align-items:center; padding:0 8px; border:0; border-radius:6px; background:#fff; color:#303030; font-size:12px; font-weight:500; text-align:left; cursor:pointer; }
.livia-chart-select-option:hover,.livia-chart-select-option:focus-visible { background:#f3f3f3; outline:0; }
.livia-chart-select-option[aria-selected="true"] { background:#f0f0f0; color:#111; }
.livia-chart-add-row { padding:6px 4px; border:0; background:transparent; color:#777; font-size:12px; cursor:pointer; }.livia-chart-format-fields,.livia-chart-table-fields>div,.livia-chart-filter-pair { display:grid; grid-template-columns:1fr 1fr; gap:8px; }.livia-chart-format-fields { margin-top:8px; padding-top:11px; border-top:1px solid #efefef; }
.livia-chart-panel label { display:grid; gap:6px; margin-bottom:11px; color:#747474; font-size:12px; }.livia-chart-table-fields>label { margin-bottom:10px; }.livia-chart-table-fields p { display:flex; align-items:center; gap:6px; margin:0 0 12px; color:#929292; font-size:11px; }.livia-chart-table-fields p i { width:6px; height:6px; border-radius:50%; background:#8ccf9a; }
.livia-chart-apply { width:100%; height:30px; border:1px solid #111; border-radius:7px; background:#111; color:#fff; font-size:12px; font-weight:550; cursor:pointer; }.livia-chart-apply:hover { border-color:#2b2b2b; background:#2b2b2b; }.livia-chart-minimum { padding-top:7px; border-top:1px solid #efefef; }.livia-chart-minimum>div { display:grid; grid-template-columns:auto 1fr; align-items:center; height:30px; border:1px solid #ddd; border-radius:7px; overflow:hidden; }.livia-chart-minimum>div span { padding-left:8px; color:#929292; }.livia-chart-minimum input { border:0; }
.livia-chart-panel-actions { display:grid; grid-template-columns:68px 1fr; gap:6px; }.livia-chart-panel-actions>button:first-child { height:31px; border:1px solid #dedede; border-radius:7px; background:#fff; color:#666; font-size:12px; cursor:pointer; }
.livia-chart-toggle { grid-template-columns:1fr auto!important; align-items:center; padding:5px 0 11px; border-bottom:1px solid #efefef; }.livia-chart-toggle span { display:grid; gap:2px; }.livia-chart-toggle strong { color:#383838; font-size:12px; font-weight:500; }.livia-chart-toggle small { color:#999; font-size:10.5px; }.livia-chart-toggle input { width:30px; height:16px; accent-color:#b316ab; cursor:pointer; }
.livia-chart-panel-section { padding:11px 0 2px; }.livia-chart-panel-section>span { display:block; margin-bottom:8px; color:#7b7b7b; font-size:11px; }.livia-chart-panel-section>small { display:block; margin-top:8px; color:#a0a0a0; font-size:10px; }.livia-chart-colors { display:flex; gap:8px; }.livia-chart-colors button { width:22px; height:22px; padding:0; border:4px solid #fff; border-radius:50%; background:var(--swatch); box-shadow:0 0 0 1px #dedede; cursor:pointer; }.livia-chart-colors button.is-selected { box-shadow:0 0 0 1.5px #444; }
.livia-chart-segmented { display:grid; grid-template-columns:repeat(3,1fr); gap:3px; padding:3px; border-radius:8px; background:#f4f4f4; }.livia-chart-segmented:has(button:nth-child(2):last-child) { grid-template-columns:repeat(2,1fr); }.livia-chart-segmented button { height:27px; border:0; border-radius:6px; background:transparent; color:#777; font-size:11px; cursor:pointer; }.livia-chart-segmented button.is-selected { background:#fff; color:#222; box-shadow:0 1px 3px rgb(0 0 0 / 8%); }
.livia-chart-slice-colors { display:grid; gap:2px; }.livia-chart-slice-color { grid-template-columns:1fr auto!important; align-items:center; min-height:33px; margin:0!important; padding:3px 2px; border-radius:7px; }.livia-chart-slice-color:hover { background:#f7f7f7; }.livia-chart-slice-color>span { min-width:0; display:flex; align-items:center; gap:8px; overflow:hidden; color:#4f4f4f; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }.livia-chart-slice-color i { width:7px; height:7px; border-radius:50%; background:var(--slice); }.livia-chart-slice-color input[type="color"] { width:25px; height:25px; padding:2px; border:1px solid #dedede; border-radius:50%; cursor:pointer; }
@media (max-width:900px) { .livia-chart-header { align-items:stretch; flex-direction:column; gap:10px; }.livia-chart-actions { flex-wrap:wrap; }.livia-chart-stage,.livia-chart-stage svg { min-height:310px; height:310px; } }
@media (max-width:580px) { .livia-chart-data-button span { display:none; }.livia-chart-data-button { width:29px; padding:0; }.livia-chart-stage { overflow-x:auto; }.livia-chart-stage svg { min-width:650px; }.livia-chart-panel { position:fixed; top:auto; right:10px; bottom:10px; left:10px; width:auto; max-height:75vh; }.livia-chart-format-fields,.livia-chart-table-fields>div { grid-template-columns:1fr; } }
