@import url("./avds/4.6.0/upstream/packages/ui-kit/src/tokens/variables.css");
@import url("./avds/4.6.0/upstream/packages/ui-kit/src/animations/animations.css");

/*
 * AV DS 4.6.0 – pinned static public consumer contract.
 * Upstream source: 88387252684aefd6b37ad34c55d3a9df537e2832.
 * UI kit: @sgeo/ui-kit 4.5.1. qz.energy keeps product compositions, data,
 * editorial policy and release authority; the React runtime is not shipped.
 */
:root {
  --av-color-blue-500:#3b82f6; --av-color-blue-600:#2563eb; --av-color-blue-700:#1d4ed8;
  --av-color-slate-50:#f8fafc; --av-color-slate-100:#f1f5f9; --av-color-slate-200:#e2e8f0;
  --av-color-slate-300:#cbd5e1; --av-color-slate-400:#94a3b8; --av-color-slate-500:#64748b;
  --av-color-slate-700:#334155; --av-color-slate-800:#1e293b; --av-color-slate-900:#0f172a;
  --av-color-slate-950:#020617; --av-color-amber-100:#fef3c7; --av-color-amber-700:#b45309;
  --av-color-green-100:#dcfce7; --av-color-green-700:#15803d; --av-color-green-800:#166534; --av-color-red-100:#fee2e2;
  --av-color-red-600:#dc2626; --av-color-red-700:#b91c1c; --av-color-amber-800:#92400e; --av-color-orange-100:#ffedd5; --av-color-orange-600:#ea580c;
  --av-color-cyan-500:#06b6d4; --av-color-cyan-950:#083344; --av-color-violet-600:#7c3aed;
  --av-color-teal-500:#14b8a6; --av-color-teal-950:#042f2e; --av-color-white:#fff;
  --av-spacing-1:4px; --av-spacing-2:8px; --av-spacing-3:12px; --av-spacing-4:16px;
  --av-spacing-5:20px; --av-spacing-6:24px; --av-spacing-8:32px; --av-spacing-10:40px; --av-spacing-12:48px;
  --av-radius-sm:4px; --av-radius-md:8px; --av-radius-lg:12px; --av-radius-xl:16px; --av-radius-full:999px;
  --av-duration-fast:120ms; --av-duration-base:180ms; --av-duration-slow:280ms; --av-ease-standard:cubic-bezier(.2,0,0,1); --av-opacity-disabled:.48;
  --av-shadow-sm:0 1px 2px rgb(15 23 42 / .12); --av-shadow-lg:0 16px 32px -12px rgb(15 23 42 / .18);
  --av-font-sans:var(--font-sans); --av-font-serif:var(--font-serif); --av-font-mono:var(--font-mono);
  --av-font-display:var(--font-display); --av-font-dashboard:var(--font-dashboard);
  --av-touch-target:44px; --av-control-size-sm:32px; --av-control-size-md:40px; --av-control-size-lg:48px; --av-reading-measure:72ch; --av-control-measure:32rem;
  --av-container-reading:76rem; --av-container-workspace:120rem; --av-container-ultrawide:160rem;
  --av-breakpoint-fold:600px; --av-breakpoint-tablet:768px; --av-breakpoint-desktop:1024px;
  --av-breakpoint-wide:1440px; --av-breakpoint-ultrawide:1920px;
  --av-z-base:0; --av-z-sticky:20; --av-z-overlay:40; --av-z-dialog:60; --av-z-toast:80;
  --av-chart-1:hsl(var(--chart-1)); --av-chart-2:hsl(var(--chart-2)); --av-chart-3:hsl(var(--chart-3));
  --av-chart-4:hsl(var(--chart-4)); --av-chart-5:hsl(var(--chart-5));
}
[data-av-theme="institutional"],.theme-institutional {
  --av-color-background:#f6f9fc; --av-color-foreground:#020617; --av-color-surface:#fff;
  --av-color-muted:#f1f5f9; --av-color-muted-foreground:#475569; --av-color-border:#e2e8f0;
  --av-color-primary:#0f766e; --av-color-primary-foreground:#fff;
}
[data-av-theme="editorial"],.theme-editorial {
  color-scheme:light; --av-color-background:#fbfaf7; --av-color-foreground:#1f2937; --av-color-surface:#fffdf8;
  --av-color-muted:#f4efe6; --av-color-muted-foreground:#5f5546; --av-color-border:#ded5c7;
  --av-color-primary:#9a3412; --av-color-primary-foreground:#fff;
}
[data-av-theme="data"],[data-av-theme="analytics"],[data-av-theme="data-analytics"],.theme-data,.theme-analytics {
  color-scheme:light; --av-color-background:#f7fafc; --av-color-foreground:#102a43; --av-color-surface:#fff;
  --av-color-muted:#e7f0f8; --av-color-muted-foreground:#486581; --av-color-border:#cbd9e6;
  --av-color-primary:#1d4ed8; --av-color-primary-foreground:#fff;
}
[data-av-theme="map"],.theme-map {
  color-scheme:light; --av-color-background:#f3faf7; --av-color-foreground:#12372a; --av-color-surface:#fff;
  --av-color-muted:#e0f0e8; --av-color-muted-foreground:#3a6251; --av-color-border:#bfddce;
  --av-color-primary:#047857; --av-color-primary-foreground:#fff;
}
.theme-default-light,[data-av-theme="default-light"] { color-scheme:light; }
.theme-golden-paper,[data-av-theme="golden-paper"] { color-scheme:light; }
.theme-cyber-dark,[data-av-theme="cyber-dark"],.dark,[data-av-theme="dark"],.theme-dark {
  color-scheme:dark; --av-color-background:#020617; --av-color-foreground:#f8fafc; --av-color-surface:#0f172a;
  --av-color-muted:#1e293b; --av-color-muted-foreground:#cbd5e1; --av-color-border:#334155;
  --av-color-primary:#2dd4bf; --av-color-primary-foreground:#042f2e;
}
.av-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.av-icon { inline-size:1em; block-size:1em; flex:none; stroke-width:2; vertical-align:-.125em; }
:where(h1,h2,h3,[data-av-anchor]) { scroll-margin-block:var(--av-spacing-8); }
.av-button,.av-input,.av-select,.av-card,.av-table,.av-badge,.av-tabs__trigger { box-sizing:border-box; }
.av-button { display:inline-flex; align-items:center; justify-content:center; min-height:var(--av-control-size-md); gap:var(--av-spacing-2); padding:0 var(--av-spacing-4); border:1px solid transparent; border-radius:var(--av-radius-md); background:var(--av-color-primary); color:var(--av-color-primary-foreground); box-shadow:var(--av-shadow-sm); cursor:pointer; font:600 14px/1.2 Inter,Arial,sans-serif; transition:background var(--av-duration-fast) var(--av-ease-standard),border-color var(--av-duration-fast) var(--av-ease-standard),box-shadow var(--av-duration-fast) var(--av-ease-standard),transform var(--av-duration-fast) var(--av-ease-standard); }
.av-button:hover { transform:translateY(-1px); box-shadow:0 4px 10px rgb(15 23 42 / .13); }.av-button:active { transform:translateY(0); box-shadow:var(--av-shadow-sm); }
.av-button--secondary { color:var(--av-color-foreground); background:var(--av-color-surface); border-color:var(--av-color-border); }
.av-button--ghost { color:var(--av-color-foreground); background:transparent; box-shadow:none; }
.av-button--danger { background:var(--av-color-red-600); color:var(--av-color-white); }
.av-button--sm { min-height:var(--av-control-size-sm); padding-inline:var(--av-spacing-3); font-size:12px; }.av-button--md { min-height:var(--av-control-size-md); }
.av-button--lg { min-height:var(--av-control-size-lg); padding-inline:var(--av-spacing-6); font-size:16px; }
.av-button:focus-visible,.av-input:focus-visible,.av-select:focus-visible,.av-tabs__trigger:focus-visible { outline:2px solid var(--av-color-primary); outline-offset:2px; scroll-margin-block:var(--av-spacing-4); }
.av-input,.av-select { width:100%; min-height:var(--av-control-size-md); padding:var(--av-spacing-3) var(--av-spacing-4); border:1px solid var(--av-color-border); border-radius:var(--av-radius-md); color:var(--av-color-foreground); background:var(--av-color-surface); font:400 14px/1.2 Inter,Arial,sans-serif; }
.av-input--sm,.av-select--sm { min-height:var(--av-control-size-sm); padding-block:var(--av-spacing-2); font-size:12px; }
.av-input--lg,.av-select--lg { min-height:var(--av-control-size-lg); font-size:16px; }
.av-input[aria-invalid="true"],.av-select[aria-invalid="true"] { border-color:var(--av-color-red-600); box-shadow:0 0 0 1px var(--av-color-red-600); }
.av-card { border:1px solid var(--av-color-border); border-radius:var(--av-radius-lg); background:var(--av-color-surface); box-shadow:var(--av-shadow-sm); }
.av-card--flat { box-shadow:none; }.av-card--raised { box-shadow:var(--av-shadow-lg); }.av-card--interactive { transition:box-shadow var(--av-duration-base) var(--av-ease-standard),transform var(--av-duration-base) var(--av-ease-standard); }.av-card--interactive:hover { transform:translateY(-2px); box-shadow:var(--av-shadow-lg); }
.av-badge { display:inline-flex; align-items:center; gap:6px; min-height:24px; padding:0 9px; border-radius:var(--av-radius-full); background:var(--av-color-muted); color:var(--av-color-muted-foreground); font:700 11px/1 Inter,Arial,sans-serif; }
.av-badge--success { color:var(--av-color-green-800); background:var(--av-color-green-100); }.av-badge--warning { color:var(--av-color-amber-800); background:var(--av-color-amber-100); }.av-badge--danger { color:var(--av-color-red-700); background:var(--av-color-red-100); }.av-badge--info { color:#075985; background:#e0f2fe; }
.av-tabs { display:flex; gap:4px; padding:4px; border:1px solid var(--av-color-border); border-radius:var(--av-radius-lg); background:var(--av-color-muted); }
.av-tabs__trigger { min-height:32px; border:0; border-radius:var(--av-radius-md); padding:0 12px; background:transparent; color:var(--av-color-muted-foreground); cursor:pointer; font:700 12px/1 Inter,Arial,sans-serif; }
.av-tabs__trigger[aria-selected="true"],.av-tabs__trigger.is-active { background:var(--av-color-surface); color:var(--av-color-foreground); box-shadow:var(--av-shadow-sm); }
.av-table { width:100%; border-collapse:collapse; font-size:14px; }.av-table th { padding:12px 16px; border-bottom:1px solid var(--av-color-border); color:var(--av-color-muted-foreground); font-size:11px; letter-spacing:.05em; text-align:left; text-transform:uppercase; }.av-table td { padding:16px; border-bottom:1px solid var(--av-color-border); vertical-align:top; }.av-table tr:last-child td { border-bottom:0; }.av-table--compact th,.av-table--compact td { padding:var(--av-spacing-2) var(--av-spacing-3); }.av-table--numeric :is(th,td) { font-variant-numeric:tabular-nums; text-align:end; }

/* Shared interaction and service states. */
:where(.av-button,.av-input,.av-select,.av-tabs__trigger,[data-av-interactive]):disabled,
:where(.av-button,.av-input,.av-select,.av-tabs__trigger,[data-av-interactive])[aria-disabled="true"] { opacity:var(--av-opacity-disabled); cursor:not-allowed; transform:none; box-shadow:none; }
[data-av-state="loading"] { cursor:progress; }
[data-av-state="loading"][aria-busy="true"]::after { content:""; inline-size:1em; block-size:1em; border:2px solid currentColor; border-inline-end-color:transparent; border-radius:50%; animation:av-spin .8s linear infinite; }
[data-av-state="skeleton"] { display:block; min-block-size:1em; border-radius:var(--av-radius-sm); background:linear-gradient(90deg,var(--av-color-muted) 25%,var(--av-color-surface) 37%,var(--av-color-muted) 63%); background-size:400% 100%; animation:av-skeleton 1.2s var(--av-ease-standard) infinite; }
[data-av-state="empty"],[data-av-state="error"],[data-av-state="degraded"],[data-av-state="success"],[data-av-state="offline"],[data-av-state="stale"],[data-av-state="stale-data"] { border:1px solid var(--av-color-border); border-radius:var(--av-radius-lg); padding:var(--av-spacing-4); }
[data-av-state="error"] { color:var(--av-color-red-700); background:var(--av-color-red-100); }
[data-av-state="degraded"] { color:var(--av-color-amber-800); background:var(--av-color-amber-100); }
[data-av-state="success"] { color:var(--av-color-green-800); background:var(--av-color-green-100); }
[data-av-state="offline"] { color:var(--av-color-red-700); background:var(--av-color-red-100); }
[data-av-state="stale"],[data-av-state="stale-data"] { color:var(--av-color-amber-800); background:var(--av-color-amber-100); }
@keyframes av-spin { to { transform:rotate(1turn); } } @keyframes av-skeleton { to { background-position:-200% 0; } }

.av-network-status { position:fixed; z-index:var(--av-z-toast); inset:auto var(--av-spacing-4) var(--av-spacing-4) auto; max-inline-size:min(30rem,calc(100% - 2 * var(--av-spacing-4))); box-shadow:var(--av-shadow-lg); }

/* Composition contracts used by static consumers. */
.av-page-shell { width:min(100% - 32px,var(--av-container-workspace)); margin-inline:auto; }
.av-reading-column { max-width:var(--av-reading-measure); }
.av-workspace { display:grid; grid-template-columns:minmax(0,1fr); gap:var(--av-spacing-6); }
.av-context-rail { min-width:0; }
.av-metric-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr)); gap:var(--av-spacing-4); }
.av-data-region { min-width:0; overflow:auto; overscroll-behavior-inline:contain; }
.av-source-foot { display:flex; flex-wrap:wrap; gap:var(--av-spacing-2) var(--av-spacing-4); color:var(--av-color-muted-foreground); font:500 12px/1.45 var(--av-font-micro,var(--av-font-sans)); }

/* Data visualisation contract. Colour is never the only status carrier. */
.av-chart { --av-series-1:var(--av-chart-1); --av-series-2:var(--av-chart-2); --av-series-3:var(--av-chart-3); --av-series-4:var(--av-chart-4); --av-series-5:var(--av-chart-5); min-width:0; }
.av-chart [data-series] { vector-effect:non-scaling-stroke; }
.av-chart-legend { display:flex; flex-wrap:wrap; gap:var(--av-spacing-2) var(--av-spacing-4); }
.av-chart-legend [data-series]::before { content:""; display:inline-block; inline-size:.8em; block-size:.8em; margin-inline-end:.45em; border:2px solid currentColor; border-radius:2px; background:var(--av-series-color,currentColor); }
.av-viz-missing { margin-block:var(--av-spacing-3) 0; padding:var(--av-spacing-3) var(--av-spacing-4); border-inline-start:3px solid var(--av-color-amber-800); background:var(--av-color-amber-100); color:var(--av-color-foreground); font-size:.875rem; }

@media (min-width:768px) {
  .av-page-shell { width:min(100% - 48px,var(--av-container-workspace)); }
  .av-workspace[data-av-layout="with-rail"] { grid-template-columns:minmax(0,1fr) minmax(16rem,22rem); align-items:start; }
}
@media (min-width:820px) { .av-metric-grid[data-av-density="comfortable"] { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (min-width:1024px) { .av-workspace[data-av-layout="with-rail"] { grid-template-columns:minmax(0,1fr) minmax(18rem,24rem); }.av-data-region[data-av-density="compact"] { font-size:13px; } }
@media (min-width:1440px) {
  .av-page-shell { width:min(100% - 64px,var(--av-container-workspace)); }
  .av-workspace[data-av-layout="with-rail"] { grid-template-columns:minmax(0,1fr) minmax(20rem,26rem); }
}
@media (min-width:1920px) {
  .av-page-shell { width:min(100% - 80px,var(--av-container-ultrawide)); }
  .av-workspace[data-av-layout="with-rail"] { grid-template-columns:minmax(0,1fr) minmax(22rem,30rem); }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior:auto!important; animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
}
@media (prefers-contrast:more) { :where(.av-button,.av-input,.av-select,.av-card,.av-table,[data-av-state]) { border-width:2px; } }
@media print {
  :root,[data-av-theme="print"],.theme-print { color-scheme:light; --av-color-background:#fff; --av-color-foreground:#000; --av-color-surface:#fff; --av-color-muted:#fff; --av-color-muted-foreground:#1f2937; --av-color-border:#64748b; --av-color-primary:#000; --av-color-primary-foreground:#fff; }
  .av-page-shell { width:100%; max-width:none; }
  .av-button,.av-tabs,[data-av-screen-only] { display:none!important; }
  .av-card,[data-av-state] { box-shadow:none; break-inside:avoid; }
}
