.dash{flex-direction:column;min-height:100%;display:flex}.dash-bar .dash-name{font:inherit;color:var(--fg);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:14rem;padding:.15rem .5rem;font-size:1rem;font-weight:600}.dash-bar .chip.status-dirty{color:var(--muted)}.dash-bar .chip.status-error{color:var(--negative)}.dash-bar .button.is-on{color:var(--positive)}.dash-bar a.button:hover{text-decoration:none}.dash-error{border:1px solid var(--line);border-left:3px solid var(--negative);border-radius:var(--radius);margin:.75rem 1rem 0;padding:.5rem .75rem;font-size:.875rem}.dash-empty{text-align:center;color:var(--muted);flex:1;place-items:center;padding:3rem 1rem;display:grid}.dash-empty h2{color:var(--fg);margin-top:0;font-size:1.1rem}.dgrid{touch-action:none;grid-template-columns:repeat(12,minmax(0,1fr));align-content:start;padding:1rem;display:grid}.dcell{min-width:0;min-height:0;position:relative}.dcell.is-moving,.dcell.is-resizing{z-index:5}.dcell.is-moving .dcard,.dcell.is-resizing .dcard{border-color:var(--accent);box-shadow:0 8px 24px #00000029}.dgrid.is-editable .dcard-head{cursor:grab}.dgrid.is-editable .dcell.is-moving .dcard-head{cursor:grabbing}@media (max-width:40rem){.dgrid{grid-template-columns:1fr;grid-auto-rows:auto!important;min-height:0!important}.dcell{height:18rem;grid-area:auto!important}}.dcard{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;height:100%;display:flex;position:relative;overflow:hidden}.dcard.is-loading .dcard-body{opacity:.7;transition:opacity .2s .3s}.dcard-head{-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;padding:.5rem .5rem .25rem .85rem;display:flex}.dcard-title{color:var(--fg);text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;font-size:.875rem;font-weight:600;overflow:hidden}.dcard-body{flex:1;min-height:0;padding:0 .5rem .5rem;position:relative}.dcard-resize{cursor:nwse-resize;border-right:2px solid var(--faint);border-bottom:2px solid var(--faint);z-index:2;border-radius:0 0 3px;width:14px;height:14px;position:absolute;bottom:3px;right:3px}.card-message{text-align:center;height:100%;color:var(--muted);place-items:center;padding:1rem;font-size:.875rem;display:grid}.card-error{color:var(--negative);font-family:var(--mono);word-break:break-word;font-size:.8rem}.dcard-menu{position:relative}.dcard-menu-btn{font:inherit;color:var(--muted);border-radius:var(--radius);cursor:pointer;background:0 0;border:0;padding:.1rem .4rem;font-size:1rem;line-height:1}.dcard-menu-btn:hover,.dcard-menu-btn[aria-expanded=true]{background:var(--stripe);color:var(--fg)}.menu{z-index:20;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;min-width:11rem;padding:.25rem;display:flex;position:absolute;top:100%;right:0;box-shadow:0 8px 24px #00000024}.menu button{font:inherit;text-align:left;color:var(--fg);cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:space-between;gap:1rem;padding:.35rem .6rem;font-size:.875rem;display:flex}.menu button:hover{background:var(--accent-soft)}.menu button.danger{color:var(--negative)}.menu button[aria-checked=true]{color:var(--accent);font-weight:500}.menu .chev{color:var(--faint)}.menu-sub{border-left:2px solid var(--line);flex-direction:column;margin:0 0 .25rem .75rem;padding-left:.25rem;display:flex}.kpi{flex-direction:column;justify-content:center;gap:.15rem;height:100%;padding:0 .5rem .25rem;display:flex}.kpi-label{color:var(--muted);font-size:.8rem}.kpi-col{color:var(--faint)}.kpi-value{letter-spacing:-.02em;font-variant-numeric:normal;color:var(--fg);font-size:clamp(1.6rem,4.5cqw,2.4rem);font-weight:600;line-height:1.1}.kpi-unit{color:var(--muted);margin-left:.35rem;font-size:.5em;font-weight:500}.kpi-delta{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.8rem}.kpi-delta.positive{color:var(--positive)}.kpi-delta.negative{color:var(--negative)}.kpi-arrow{margin-right:.3rem;font-size:.65em}.kpi-pct{opacity:.85}.kpi-vs{color:var(--muted)}.dcard-body:has(.kpi){container-type:inline-size}.card-table{height:100%;font-size:.8rem;overflow:auto}.card-table table{width:auto;min-width:100%}.card-table th,.card-table td{padding:.25rem .6rem}.card-table thead th{background:var(--surface);z-index:1;position:sticky;top:0}.card-table tbody th{background:var(--surface);white-space:nowrap;font-weight:500}.card-table th.rowdim{text-align:left}.card-table tbody th.rowdim-last{position:sticky;left:0}.card-table tbody th.is-repeat{color:#0000}.card-table tbody tr.group-start th,.card-table tbody tr.group-start td{border-top:1px solid color-mix(in srgb, var(--fg) 12%, transparent)}.card-table tbody tr:nth-child(2n) th{background:color-mix(in srgb, var(--surface), var(--fg) 2%)}.card-table td.num.text{text-align:left;white-space:nowrap}.card-table td.num.text-long{white-space:normal;min-width:16rem}.card-table .cell-error{color:var(--negative);font-family:var(--mono)}.card-table td.input{cursor:text}.card-table td.is-input{color:var(--accent,#1d4ed8)}.card-table td.input:hover,.card-table td.input:focus-visible{outline:1px solid var(--accent,#1d4ed8);outline-offset:-1px;border-radius:3px}.card-table td.is-pending{opacity:.5}.card-table td.is-editing{padding:0}.card-table td.is-editing input{box-sizing:border-box;width:100%;min-width:5rem;font:inherit;text-align:right;border:1px solid var(--accent,#1d4ed8);background:var(--bg);color:var(--fg);border-radius:3px;outline:none;padding:.25rem .6rem}.card-table-error{color:var(--negative);padding:.25rem .6rem;font-size:.75rem}.is-editable .dcard-title:after{content:" · editable";color:var(--muted);font-size:.8em;font-weight:400}.dlg-backdrop{z-index:50;background:#00000059;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.dlg{background:var(--bg);border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:.85rem;width:min(40rem,100%);max-height:calc(100vh - 2rem);padding:1.25rem 1.5rem;display:flex;overflow:auto;box-shadow:0 16px 48px #00000040}.dlg h2{margin:0;font-size:1.1rem}.dlg .field{color:var(--muted);flex-direction:column;flex:1;gap:.25rem;min-width:0;font-size:.85rem;display:flex}.dlg .field-row{flex-wrap:wrap;gap:.75rem;display:flex}.dlg input,.dlg select{font:inherit;color:var(--fg);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:0;padding:.35rem .5rem;font-size:.9rem}.dlg select[multiple]{padding:.25rem}.dlg .dims{border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:.6rem;padding:.5rem .85rem .75rem;display:flex}.dlg .dims legend{color:var(--muted);padding-inline:.3rem;font-size:.8rem}.dlg .dim{grid-template-columns:minmax(6rem,8rem) auto minmax(0,1fr);align-items:start;gap:.5rem .75rem;font-size:.875rem;display:grid}.dlg .dim-name{padding-top:.3rem;font-weight:500}.dlg .dim-role{color:var(--muted);gap:.6rem;padding-top:.3rem;display:flex}.dlg .dim-role label{align-items:center;gap:.2rem;display:inline-flex}.dlg .dim-hint{grid-column:3;gap:.5rem;font-size:.75rem;display:flex}.dlg .link{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;font-size:.75rem}.dlg .dlg-actions{justify-content:flex-end;gap:.5rem;margin-top:.25rem;display:flex}@media (max-width:40rem){.dlg .dim{grid-template-columns:1fr}.dlg .dim-hint{grid-column:1}}.pub{min-height:100dvh}.pub-head{align-items:baseline;gap:.75rem;padding:.75rem 1rem 0;display:flex}.pub-head h1{margin:0;font-size:1.15rem}.pub-head .by{color:var(--faint);font-size:.8rem}.pub-head .by a{color:var(--muted)}.dlist{max-width:52rem;padding:1rem}.dlist h1{margin-bottom:1rem;font-size:1.25rem}.dlist table{font-size:.9rem}.dlist .actions{justify-content:flex-end;gap:.5rem;display:flex}.dlist .actions button{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;padding:.1rem .3rem;font-size:.8rem}.dlist .actions button.danger{color:var(--negative)}.dlist form.new{gap:.5rem;margin-top:1.25rem;display:flex}.dlist form.new input,.dlist input.rename{font:inherit;color:var(--fg);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:.3rem .5rem}.dlist .pub-flag{color:var(--positive);font-size:.8rem}.dash[data-dash-theme]{background:var(--bg);color:var(--fg);font-family:var(--font)}.dash[data-dash-theme=banking] .dcard{border:1px solid var(--line);box-shadow:none;border-radius:0}.dash[data-dash-theme=banking] .dcard-head{background:var(--theme-head-bg);color:var(--theme-head-fg);border-bottom:2px solid var(--theme-rule);padding:.4rem .5rem .4rem .85rem}.dash[data-dash-theme=banking] .dcard-title{color:var(--theme-head-fg);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:700}.dash[data-dash-theme=banking] .dcard-menu-btn{color:var(--theme-head-fg);opacity:.8}.dash[data-dash-theme=banking] .dcard-menu-btn:hover,.dash[data-dash-theme=banking] .dcard-menu-btn[aria-expanded=true]{color:var(--theme-head-fg);opacity:1;background:#ffffff26}.dash[data-dash-theme=banking] .dcard-body{padding-top:.35rem}.dash[data-dash-theme=banking] .card-table{font-variant-numeric:tabular-nums;font-size:.78rem}.dash[data-dash-theme=banking] .card-table thead th{background:var(--theme-thead-bg);color:var(--accent);border-bottom:1.5px solid var(--accent);font-weight:700}.dash[data-dash-theme=banking] .card-table tbody th,.dash[data-dash-theme=banking] .card-table tbody td{border-bottom:1px solid var(--line)}.dash[data-dash-theme=banking] .card-table tbody tr:nth-child(2n) th,.dash[data-dash-theme=banking] .card-table tbody tr:nth-child(2n) td{background:var(--theme-band)}.dash[data-dash-theme=banking] .card-table tbody tr:last-child th,.dash[data-dash-theme=banking] .card-table tbody tr:last-child td{border-bottom:1.5px solid var(--accent)}.dash[data-dash-theme=banking] .card-table td.is-input{color:#1f4e9c}.dash[data-dash-theme=banking] .kpi-label{text-transform:uppercase;letter-spacing:.05em;color:var(--accent);font-size:.7rem;font-weight:700}.dash[data-dash-theme=banking] .kpi-value{color:var(--accent);letter-spacing:0;font-weight:700}.dash[data-dash-theme=banking] .dcell.is-moving .dcard,.dash[data-dash-theme=banking] .dcell.is-resizing .dcard{box-shadow:0 8px 24px #0b2a4a40}.dash[data-dash-theme=boardroom] .dcard{border-color:var(--line);background:var(--surface)}.dash[data-dash-theme=boardroom] .dcard-head{background:var(--theme-head-bg);border-bottom:1px solid var(--line)}.dash[data-dash-theme=boardroom] .card-table thead th{background:var(--theme-thead-bg);color:var(--fg);border-bottom:1px solid var(--accent)}.dash[data-dash-theme=boardroom] .card-table tbody th{background:var(--surface)}.dash[data-dash-theme=boardroom] .card-table tbody tr:nth-child(2n) th,.dash[data-dash-theme=boardroom] .card-table tbody tr:nth-child(2n) td{background:var(--theme-band)}.dash[data-dash-theme=boardroom] .kpi-value{color:var(--accent)}.dash[data-dash-theme=print] .dcard{border:1px solid var(--fg);border-radius:0}.dash[data-dash-theme=print] .dcard-head{border-bottom:1px solid var(--fg);padding-bottom:.35rem}.dash[data-dash-theme=print] .dcard-title{font-size:.85rem;font-weight:700}.dash[data-dash-theme=print] .card-table thead th{border-bottom:1px solid var(--fg);background:var(--surface);color:var(--fg)}.dash[data-dash-theme=print] .card-table tbody th,.dash[data-dash-theme=print] .card-table tbody td{border-bottom:1px solid #d0d0d0}.dash[data-dash-theme=print] .card-table tbody tr:last-child th,.dash[data-dash-theme=print] .card-table tbody tr:last-child td{border-bottom:1px solid var(--fg)}.dash[data-dash-theme=print] .card-table tbody th{background:var(--surface)}.dash[data-dash-theme=print] .card-table tbody tr:nth-child(2n) th,.dash[data-dash-theme=print] .card-table tbody tr:nth-child(2n) td{background:var(--theme-band)}.dash[data-dash-theme=print] .card-table td.is-input{color:#333}.dash[data-dash-theme=print] .kpi-value{font-weight:700}.dash[data-dash-theme=revenue] .dgrid{gap:1rem;padding:1.25rem}.dash[data-dash-theme=revenue] .dcard{border:1px solid var(--line);border-radius:12px;box-shadow:0 1px 2px #1a1f360d,0 6px 16px #1a1f360d}.dash[data-dash-theme=revenue] .dcard-head{padding:.75rem .75rem .35rem 1rem}.dash[data-dash-theme=revenue] .dcard-title{letter-spacing:-.01em;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;display:flex}.dash[data-dash-theme=revenue] .dcard-title:before{content:"";background:var(--accent);border-radius:2px;flex:none;width:4px;height:1em}.dash[data-dash-theme=revenue] .dcard-body{padding:0 .75rem .75rem}.dash[data-dash-theme=revenue] .card-table{font-size:.8125rem}.dash[data-dash-theme=revenue] .card-table thead th{background:var(--theme-thead-bg);color:var(--muted);letter-spacing:.05em;text-transform:uppercase;border-bottom:1px solid var(--line);font-size:.7rem;font-weight:600}.dash[data-dash-theme=revenue] .card-table tbody th,.dash[data-dash-theme=revenue] .card-table tbody td{border-bottom:1px solid var(--line);padding-top:.35rem;padding-bottom:.35rem}.dash[data-dash-theme=revenue] .card-table tbody th{background:var(--surface)}.dash[data-dash-theme=revenue] .card-table tbody tr:nth-child(2n) th,.dash[data-dash-theme=revenue] .card-table tbody tr:nth-child(2n) td{background:var(--theme-band)}.dash[data-dash-theme=revenue] .card-table tbody tr:hover th,.dash[data-dash-theme=revenue] .card-table tbody tr:hover td{background:var(--stripe)}.dash[data-dash-theme=revenue] .kpi{gap:.3rem;padding-left:.5rem}.dash[data-dash-theme=revenue] .kpi-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.dash[data-dash-theme=revenue] .kpi-value{letter-spacing:-.03em;color:var(--fg);font-size:clamp(1.8rem,5cqw,2.6rem);font-weight:700}.dash[data-dash-theme=revenue] .kpi-delta{background:var(--stripe);white-space:nowrap;border-radius:999px;width:fit-content;padding:.15rem .55rem;font-weight:500;display:inline-block}.dash[data-dash-theme=revenue] .kpi-delta.positive{background:#16a34a1f}.dash[data-dash-theme=revenue] .kpi-delta.negative{background:#dc26261a}.dash[data-dash-theme=revenue] .kpi-vs{color:var(--muted)}.dash[data-dash-theme=controller] .dcard{border:1px solid var(--line);box-shadow:none;border-radius:4px}.dash[data-dash-theme=controller] .dcard-head{background:var(--theme-head-bg);border-bottom:1px solid var(--line);border-left:3px solid var(--accent);padding:.4rem .5rem .4rem .75rem}.dash[data-dash-theme=controller] .dcard-title{color:var(--fg);font-size:.8125rem;font-weight:600}.dash[data-dash-theme=controller] .dcard-body{padding-top:.35rem}.dash[data-dash-theme=controller] .card-table{font-variant-numeric:tabular-nums;font-size:.78rem}.dash[data-dash-theme=controller] .card-table th,.dash[data-dash-theme=controller] .card-table td{border:1px solid var(--line)}.dash[data-dash-theme=controller] .card-table thead th{background:var(--theme-thead-bg);color:var(--fg);border-bottom:2px solid var(--accent);font-weight:600}.dash[data-dash-theme=controller] .card-table tbody th{background:var(--surface);font-weight:500}.dash[data-dash-theme=controller] .card-table tbody tr:nth-child(2n) th,.dash[data-dash-theme=controller] .card-table tbody tr:nth-child(2n) td{background:var(--theme-band)}.dash[data-dash-theme=controller] .card-table td.negative{color:var(--negative)}.dash[data-dash-theme=controller] .card-table td.is-input{color:#1d4ed8}.dash[data-dash-theme=controller] .kpi-label{color:var(--muted);font-size:.75rem;font-weight:600}.dash[data-dash-theme=controller] .kpi-value{letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-weight:600}.dash[data-dash-theme=controller] .dlink{border-radius:4px}.dash[data-dash-theme=research] .dgrid{gap:.9rem;padding:1.1rem}.dash[data-dash-theme=research] .dcard{border:1px solid var(--line);box-shadow:none;border-radius:6px}.dash[data-dash-theme=research] .dcard-head{border-bottom:1px solid var(--line);padding:.7rem .75rem .45rem 1rem}.dash[data-dash-theme=research] .dcard-title{font-family:var(--theme-display);letter-spacing:-.005em;font-size:1.02rem;font-weight:600}.dash[data-dash-theme=research] .dcard-body{padding:.45rem .75rem .75rem}.dash[data-dash-theme=research] .card-table{font-variant-numeric:tabular-nums;font-size:.8125rem}.dash[data-dash-theme=research] .card-table thead th{background:var(--theme-thead-bg);color:var(--muted);letter-spacing:.07em;text-transform:uppercase;border-bottom:1px solid var(--fg);font-size:.68rem;font-weight:600}.dash[data-dash-theme=research] .card-table tbody th,.dash[data-dash-theme=research] .card-table tbody td{border-bottom:1px solid var(--line);padding-top:.33rem;padding-bottom:.33rem}.dash[data-dash-theme=research] .card-table tbody th{background:var(--surface);font-weight:500}.dash[data-dash-theme=research] .card-table tbody tr:nth-child(2n) th,.dash[data-dash-theme=research] .card-table tbody tr:nth-child(2n) td{background:var(--theme-band)}.dash[data-dash-theme=research] .card-table tbody tr:last-child th,.dash[data-dash-theme=research] .card-table tbody tr:last-child td{border-bottom:1px solid var(--fg)}.dash[data-dash-theme=research] .card-table td.is-input{color:var(--accent)}.dash[data-dash-theme=research] .kpi-label{letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-size:.68rem;font-weight:600}.dash[data-dash-theme=research] .kpi-value{font-family:var(--theme-display);letter-spacing:-.01em;color:var(--fg);font-size:clamp(1.9rem,5cqw,2.7rem);font-weight:600}.dash[data-dash-theme=research] .kpi-unit{font-family:var(--font)}.dash[data-dash-theme=research] .kpi-delta{font-size:.8rem}.dash[data-dash-theme=research] .dlink{border-radius:3px}.dash-bar select.dash-theme{font:inherit;color:var(--fg);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;padding:.25rem .5rem;font-size:.8125rem}.dcard.is-links .dcard-body{align-items:center;padding:.35rem .75rem .45rem;display:flex}.dcard.is-links .dcard-head+.dcard-body{padding-top:0}.dlinks{flex-wrap:wrap;align-items:center;gap:.4rem;width:100%;display:flex}.dlink{color:var(--fg);background:var(--surface);border:1px solid var(--line);white-space:nowrap;border-radius:999px;padding:.25rem .75rem;font-size:.8125rem;font-weight:500;text-decoration:none;display:inline-block}.dlink:hover{border-color:var(--accent);color:var(--accent);text-decoration:none}.dlink.is-current{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.dash[data-dash-theme=banking] .dlink{text-transform:uppercase;letter-spacing:.05em;border-radius:0;font-size:.7rem;font-weight:700}.dash[data-dash-theme=print] .dlink{border-radius:0}
