@font-face{font-family:Söhne;src:url(/fonts/S_hne-Buch.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Söhne;src:url(/fonts/S_hne-Halbfett.otf)format("opentype");font-weight:650;font-style:normal;font-display:swap}@font-face{font-family:Söhne Breit;src:url(/fonts/S_hneBreit-Buch.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Söhne Breit;src:url(/fonts/S_hneBreit-Dreiviertelfett.otf)format("opentype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Söhne Breit;src:url(/fonts/S_hneBreit-Halbfett.otf)format("opentype");font-weight:650;font-style:normal;font-display:swap}@font-face{font-family:Berkeley Mono;src:url(/fonts/BerkeleyMono-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Berkeley Mono;src:url(/fonts/BerkeleyMono-Medium.ttf)format("truetype");font-weight:500;font-style:normal;font-display:swap}:root{--font-display:"Söhne Breit", ui-sans-serif, system-ui, sans-serif;--font-sans:"Söhne", ui-sans-serif, system-ui, sans-serif;--font-mono:"Berkeley Mono", "JetBrains Mono", ui-monospace, monospace;--brand-bone:#fffdf1;--brand-bone-deep:#ece7e1;--brand-charcoal:#1a1e20;--brand-slate:#515a5e;--brand-stone:#9aa5ab;--brand-emerald:#086552;--brand-gold:#ecbc50;--brand-orange:#f15c3b;--brand-sky:#389bfe;--radius:8px;--shadow-block:none;--chart-base-min:14px;--chart-base-ideal:2.05cqw;--chart-base-max:21px;--chart-base:clamp(var(--chart-base-min), var(--chart-base-ideal), var(--chart-base-max));--chart-title-ratio:2;--chart-sub-ratio:1.3;--chart-source-ratio:1;--chart-pad-y:clamp(18px, 3cqw, 32px);--chart-pad-x:clamp(20px, 3.7cqw, 38px);--chart-panel-gap:clamp(20px, 4cqw, 36px)}*{box-sizing:border-box}html,body{height:100%;color:var(--brand-charcoal);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;background:#eeeae2;margin:0;font-size:14px;line-height:20px;overflow:hidden}button,input,select,textarea{font:inherit}button{border:0}.appShell{grid-template-rows:64px minmax(0,1fr);height:100vh;display:grid;overflow:hidden}.navbar{border-bottom:1px solid var(--brand-charcoal);background:var(--brand-bone);justify-content:space-between;align-items:center;gap:20px;padding:0 24px;display:flex;position:relative}.navbarCenter{max-width:320px;color:var(--brand-stone);text-align:center;font-size:12px;position:absolute;left:50%;transform:translate(-50%)}.brandLockup{align-items:center;gap:16px;min-width:0;display:flex}.brandLockup img{width:150px;height:auto}.appTitle{border-left:1px solid var(--brand-bone-deep);font-family:var(--font-display);letter-spacing:-.02em;padding-left:16px;font-size:26px;font-weight:650;line-height:1}.navbarActions,.buttonRow{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.workspace{grid-template-columns:minmax(320px,400px) minmax(560px,1fr) minmax(320px,380px);height:100%;min-height:0;display:grid;overflow:hidden}.sidePanel{background:#f7f4ee;border-right:1px solid #1a1e2029;height:100%;min-height:0;padding:18px;overflow:hidden auto}.sidePanel.right{border-left:1px solid #1a1e2029;border-right:0}.stageArea{background-color:#eeeae2;background-image:linear-gradient(#1a1e2009 1px,#0000 1px),linear-gradient(90deg,#1a1e2009 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:24px 24px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;place-items:center;min-width:0;height:100%;min-height:0;padding:24px;display:grid;overflow:hidden}.panelSection{border-bottom:1px dashed #1a1e2038;gap:12px;margin-bottom:22px;padding-bottom:18px;display:grid}.panelTitle,.eyebrow{font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase;color:var(--brand-emerald);margin:0;font-size:11px;font-weight:650;line-height:1}.field{gap:6px;display:grid}.field span,.field label,.controlLabel{color:var(--brand-slate);font-size:12px;font-weight:650}.field input,.field select,.field textarea,.textInput{border:1px solid var(--brand-charcoal);background:var(--brand-bone);width:100%;min-height:36px;color:var(--brand-charcoal);border-radius:0;outline:none;padding:8px 10px}.field textarea{resize:vertical;min-height:72px}.field input:focus,.field select:focus,.field textarea:focus,.textInput:focus{outline:2px solid var(--brand-gold);outline-offset:1px}.primaryButton,.secondaryButton,.ghostButton,.dangerButton{border:1px solid var(--brand-charcoal);cursor:pointer;border-radius:0;min-height:36px;padding:8px 12px;font-weight:650}.primaryButton{background:var(--brand-emerald);color:var(--brand-bone)}.secondaryButton{background:var(--brand-bone);color:var(--brand-charcoal)}.ghostButton{border-color:var(--brand-bone-deep);color:var(--brand-emerald);background:0 0}.dangerButton{border-color:var(--brand-orange);background:var(--brand-bone);color:var(--brand-orange)}.primaryButton:disabled,.secondaryButton:disabled,.ghostButton:disabled{cursor:not-allowed;opacity:.55;box-shadow:none}.metaGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.statBox{border:1px solid var(--brand-charcoal);background:var(--brand-bone);padding:10px}.statBox strong{font-family:var(--font-mono);font-size:16px;display:block}.callout,.warning,.errorBox{border:1px solid var(--brand-charcoal);background:var(--brand-bone);color:var(--brand-slate);padding:12px}.warning{border-color:var(--brand-gold)}.errorBox{border-color:var(--brand-orange);color:var(--brand-orange)}.tableWrap{border:1px solid var(--brand-charcoal);background:var(--brand-bone);overflow:auto}.chartBody.tableWrap{background:0 0;border:0}.dataTable,.chartTable{border-collapse:collapse;width:100%;font-size:12px}.dataTable th{z-index:1;background:var(--brand-bone-deep);color:var(--brand-slate);font-family:var(--font-display);letter-spacing:.12em;text-align:left;text-transform:uppercase;font-size:10px;position:sticky;top:0}.chartTable th{z-index:1;color:var(--brand-slate);font-family:var(--font-display);letter-spacing:.12em;text-align:left;text-transform:uppercase;border-bottom:1px solid var(--brand-bone-deep);background:0 0;font-size:10px;position:sticky;top:0}.dataTable th,.dataTable td,.chartTable th,.chartTable td{border-bottom:1px dashed var(--brand-bone-deep);white-space:nowrap;padding:7px 9px}.dataTable td.numeric,.chartTable td.numeric{text-align:right;font-family:var(--font-mono)}.positive{color:var(--brand-emerald)}.negative{color:var(--brand-orange)}.frameShell{flex-direction:column;gap:12px;width:100%;max-width:100%;height:100%;min-height:0;max-height:100%;display:flex}.frameToolbar{flex:none;justify-content:space-between;align-items:center;gap:12px;display:flex}.frameSurfaceWrap{flex:auto;place-items:center;width:100%;min-height:0;display:grid;container-type:size}.frameSurface{aspect-ratio:16/9;width:min(100%,177.778cqh);box-shadow:none;background:#fff;border:0;padding:clamp(12px,1.6vw,24px);position:relative;overflow:hidden}.frameSurface.square{aspect-ratio:1;width:min(100%,100cqh)}.tileGrid{grid-auto-rows:1fr;grid-auto-flow:row;gap:14px;height:100%;min-height:0;display:grid}.chartTile{z-index:1;min-width:0;min-height:0;display:flex;position:relative}.rowDropZone{pointer-events:none;background:0 0;border-radius:0;transition:background 80ms}.rowDropZone.active{outline:1px dashed var(--brand-gold);outline-offset:-2px;background:#d4af3724}.chartCard{min-width:0;min-height:0;box-shadow:none;background:0 0;border:0;flex-direction:column;flex:1;padding:0;display:flex;position:relative;container-type:inline-size}.chartCard.selected{outline:2px solid var(--brand-gold);outline-offset:3px}.frameSurface.exporting .chartCard.selected,.frameSurface.exporting .editorChrome{outline:none!important;display:none!important}.tileHandle{z-index:4;border:1px solid var(--brand-charcoal);background:var(--brand-bone-deep);color:var(--brand-charcoal);cursor:grab;font-family:var(--font-mono);padding:3px 7px;font-size:11px;position:absolute;top:8px;right:8px}.chartTitle{font-family:var(--font-display);letter-spacing:-.03em;margin:0 0 4px;font-size:clamp(19px,2.3cqw,34px);font-weight:650;line-height:1.05}.chartSubtitle{color:var(--brand-slate);margin:0 0 10px;font-size:clamp(12px,1.35cqw,18px)}.chartBody{flex:1;min-height:0;position:relative}.echart{width:100%;height:100%;min-height:0}.sourceLabel{color:var(--brand-stone);margin-top:8px;font-size:clamp(10px,1cqw,14px)}.textEditButton{width:fit-content;max-width:100%;color:inherit;cursor:text;text-align:left;background:0 0;border:0;padding:0;display:block}.annotationLayer{pointer-events:none;position:absolute;inset:0}.annotation{min-height:28px;box-shadow:none;color:var(--brand-charcoal);pointer-events:auto;cursor:move;background:#ece7e1e0;border:0;padding:7px 9px;font-size:12px;line-height:1.25;position:absolute}.annotation.selected{outline:1px dashed var(--brand-gold)}.annotation.chartAnnotation{background:0 0!important}.annotation textarea{width:100%;color:inherit;font:inherit;text-align:inherit;resize:none;background:0 0;border:0;outline:none}.emptyState{border:1px dashed var(--brand-stone);min-height:0;color:var(--brand-slate);text-align:center;place-items:center;padding:16px;display:grid}.kpiCard,.highlightCard{align-content:center;gap:10px;height:100%;display:grid}.kpiValue{font-family:var(--font-display);letter-spacing:-.05em;color:var(--brand-emerald);font-size:clamp(44px,8cqw,112px);font-weight:600;line-height:.9}.kpiLabel{color:var(--brand-slate);font-size:clamp(14px,1.8cqw,24px)}.highlightCard{background:0 0;border-left:0;padding:clamp(16px,3cqw,34px)}.highlightCard strong{font-family:var(--font-display);font-size:clamp(24px,5cqw,72px);line-height:1}.inlineText{width:100%;color:inherit;background:0 0;border:0;outline:0;padding:0}.highlightValue{font-family:var(--font-display);font-size:clamp(24px,5cqw,72px);font-weight:650;line-height:1}.highlightText{resize:vertical;min-height:56px}.configGroup{border:1px solid var(--brand-bone-deep);gap:10px;margin:0;padding:12px;display:grid}.configGroup legend{color:var(--brand-slate);font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:650}.disabledConfig{opacity:.42}.tableSparkline{width:110px;height:32px;display:block}.modalBackdrop{z-index:50;background:#1a1e2038;place-items:center;display:grid;position:fixed;inset:0}.textModal{border:1px solid var(--brand-charcoal);background:#fff;gap:14px;width:min(520px,100vw - 32px);padding:20px;display:grid}.textModal h2{font-family:var(--font-display);margin:0}.textModal input,.textModal textarea{border:1px solid var(--brand-charcoal);background:#fff;width:100%;padding:10px}.textModal textarea{min-height:140px}.swatches{flex-wrap:wrap;gap:7px;display:flex}.swatchButton{border:1px solid var(--brand-charcoal);cursor:pointer;width:24px;height:24px}.colorTooltipWrap{flex:1;min-width:0;display:inline-flex}.colorTooltipWrap.compact{flex:none}.colorTooltipTrigger{border:1px solid var(--brand-charcoal);background:var(--brand-bone);width:100%;min-height:32px;color:var(--brand-charcoal);cursor:pointer;text-align:left;align-items:center;gap:8px;padding:4px 8px;display:inline-flex}.colorTooltipWrap.compact .colorTooltipTrigger{justify-content:center;width:32px;min-width:32px;height:32px;padding:0}.colorTooltipSwatch{border:1px solid var(--brand-charcoal);flex-shrink:0;width:18px;height:18px;display:inline-block}.colorTooltipWrap.compact .colorTooltipSwatch{width:22px;height:22px}.colorTooltipLabel{font-family:var(--font-mono);color:var(--brand-charcoal);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.colorTooltipPanel{z-index:200;border:1px solid var(--brand-charcoal);background:var(--brand-bone);max-height:460px;box-shadow:4px 4px 0 0 var(--brand-bone-deep);gap:10px;padding:10px;display:grid;position:fixed;overflow-y:auto}.colorTooltipBand{border-top:2px solid var(--brand-emerald);gap:6px;padding-top:6px;display:grid}.colorTooltipBand:first-child{border-top-color:var(--brand-charcoal);border-top-width:3px}.colorTooltipBandLabel{font-family:var(--font-display);align-items:baseline;gap:8px;font-size:11px;display:flex}.colorTooltipBandLabel strong{color:var(--brand-charcoal);font-weight:650}.colorTooltipBandLabel span{font-family:var(--font-sans);color:var(--brand-slate);font-size:10px}.colorTooltipChips{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;display:grid}.colorTooltipChip{text-align:left;min-height:46px;color:var(--brand-charcoal);cursor:pointer;border:1px solid #1a1e202e;align-content:space-between;gap:2px;padding:4px 5px;display:grid}.colorTooltipChip.isDark{color:var(--brand-bone)}.colorTooltipChip.selected{outline:2px solid var(--brand-gold);outline-offset:1px}.colorTooltipChipName{font-family:var(--font-sans);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:600;line-height:1;overflow:hidden}.colorTooltipChipHex{font-family:var(--font-mono);opacity:.82;font-size:9px;line-height:1}.seriesColorList{border-top:1px solid var(--brand-bone-deep);gap:8px;padding-top:10px;display:grid}.seriesColorTitle{color:var(--brand-slate);font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:650}.seriesColorRow{grid-template-columns:minmax(0,1fr) 32px 86px;align-items:center;gap:6px;display:grid}.seriesColorRow.withHandle{grid-template-columns:22px minmax(0,1fr) 32px 86px}.seriesColorLabel{color:var(--brand-charcoal);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.seriesDragHandle{border:1px solid var(--brand-bone-deep);background:var(--brand-bone);width:22px;height:28px;color:var(--brand-slate);font-family:var(--font-mono);cursor:grab;touch-action:none;justify-content:center;align-items:center;font-size:12px;display:inline-flex}.seriesDragHandle:active{cursor:grabbing}.hexInput{border:1px solid var(--brand-charcoal);background:var(--brand-bone);width:100%;min-height:32px;color:var(--brand-charcoal);font-family:var(--font-mono);outline:none;padding:4px 6px;font-size:11px}.hexInput:focus{outline:2px solid var(--brand-gold);outline-offset:1px}.columnList{gap:8px;display:grid}.columnCard{background:var(--brand-bone);border:1px solid #1a1e202e;padding:9px}.columnCard strong{justify-content:space-between;gap:8px;display:flex}.badge{border:1px solid var(--brand-bone-deep);min-height:20px;color:var(--brand-slate);font-family:var(--font-mono);text-transform:uppercase;align-items:center;padding:1px 6px;font-size:10px;display:inline-flex}@media (max-width:1180px){.workspace{grid-template-columns:1fr}.sidePanel,.sidePanel.right{border:0;border-bottom:1px solid #1a1e2029;max-height:none}}
