/* ag-tokens.css — abagraph design-system source of truth (generated from static/atoms.html).
   Edit design tokens HERE only; pages link this file, they do not inline tokens.
   Pages must add the Google Fonts <link> themselves (Plus Jakarta Sans + JetBrains Mono);
   this file intentionally does NOT @import fonts. */

[data-theme]{
  --ag-sans:'Plus Jakarta Sans',system-ui,sans-serif;
  --ag-mono:'JetBrains Mono',ui-monospace,monospace;
  --ag-r-sm:5px;--ag-r-md:6px;--ag-r-lg:8px;--ag-r-xl:12px;--ag-r-pill:999px;
  /* motion + focus (shared) — "craft, not paint": premium polish, tokens only */
  --ag-ease:cubic-bezier(.2,.7,.2,1);
  --ag-dur-fast:120ms;--ag-dur-med:220ms;
  --ag-ring:0 0 0 2px var(--ag-page-bg),0 0 0 4px color-mix(in srgb,var(--ag-accent) 55%,transparent);
  --ag-halo:0 0 0 3px color-mix(in srgb,var(--ag-accent) 13%,transparent);
}
[data-theme="light"]{
  --ag-page-bg:#F4F6F7;--ag-card-bg:#FFFFFF;--ag-input-bg:#EDF0F1;--ag-hover-bg:#F1F4F5;
  --ag-selected-bg:#E7ECED;--ag-border:#DFE4E6;--ag-border-light:#EBEFF0;
  --ag-text-primary:#121618;--ag-text-main:#384245;--ag-text-muted:#667074;--ag-text-secondary:#94A0A4;
  --ag-tag-bg:#EDF0F1;--ag-tag-text:#6E787C;--ag-accent:#0E9BB4;--ag-accent-soft:#DEF2F6;
  --ag-success:#1F9D63;--ag-success-bg:#E7F6EE;--ag-warning:#C8841F;--ag-warning-bg:#FBF1E0;
  --ag-danger:#CF3B3B;--ag-danger-bg:#F8E9E9;--ag-info:#5B6270;--ag-info-bg:#EDEEF0;
  --ag-dot:rgba(18,22,24,.07);
  /* elevation — warm-tinted, layered, low alpha; + inset top-highlight */
  --ag-shadow-xs:0 1px 2px rgba(26,22,14,.05);
  --ag-shadow-sm:0 1px 2px rgba(26,22,14,.04),0 2px 8px -2px rgba(26,22,14,.07);
  --ag-shadow-card:0 1px 2px rgba(26,22,14,.03),0 2px 10px -4px rgba(26,22,14,.06);
  --ag-highlight:inset 0 1px 0 rgba(255,255,255,.07);
}
[data-theme="dark"]{
  --ag-page-bg:#0E1214;--ag-card-bg:#16191B;--ag-input-bg:#1E2225;--ag-hover-bg:#1A1E20;
  --ag-selected-bg:#262B2E;--ag-border:#2E3438;--ag-border-light:#22272A;
  --ag-text-primary:#F2F5F6;--ag-text-main:#D5DBDD;--ag-text-muted:#93A0A4;--ag-text-secondary:#67757A;
  --ag-tag-bg:#212729;--ag-tag-text:#AEB8BC;--ag-accent:#2DD4E6;--ag-accent-soft:#0C2A30;
  --ag-success:#43C189;--ag-success-bg:#16291F;--ag-warning:#E0A24A;--ag-warning-bg:#2C2415;
  --ag-danger:#E86C6C;--ag-danger-bg:#2E1A1A;--ag-info:#9AA0AD;--ag-info-bg:#212329;
  --ag-dot:rgba(245,244,242,.06);
  /* elevation — deeper for near-black; card shadow gains an inner top-light */
  --ag-shadow-xs:0 1px 2px rgba(0,0,0,.45);
  --ag-shadow-sm:0 1px 2px rgba(0,0,0,.4),0 3px 10px -2px rgba(0,0,0,.45);
  --ag-shadow-card:inset 0 1px 0 rgba(255,255,255,.04),0 2px 12px -4px rgba(0,0,0,.5);
  --ag-highlight:inset 0 1px 0 rgba(255,255,255,.06);
  --ag-halo:0 0 0 3px color-mix(in srgb,var(--ag-accent) 22%,transparent);
}

/* --- base reset ------------------------------------------------------------- */
*{box-sizing:border-box;}
body{
  margin:0;
  font-family:var(--ag-sans);
  color:var(--ag-text-main);
  background:var(--ag-page-bg);
  -webkit-font-smoothing:antialiased;
}

/* --- keyframes (8) ---------------------------------------------------------- */
@keyframes ag-pulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.55;transform:scale(.82);}}
@keyframes ag-blink{0%,100%{opacity:1;}50%{opacity:.35;}}
@keyframes ag-ring{0%{box-shadow:0 0 0 0 var(--ag-accent);opacity:.5;}100%{box-shadow:0 0 0 10px var(--ag-accent);opacity:0;}}
@keyframes ag-spin{to{transform:rotate(360deg);}}
@keyframes ag-think{0%,100%{opacity:.18;transform:scale(.62);}45%{opacity:1;transform:scale(1);}}
@keyframes ag-think-core{0%,100%{opacity:.85;transform:scale(.85);}50%{opacity:1;transform:scale(1.12);}}
@keyframes ag-shimmer{0%{background-position:-200% 0;}100%{background-position:200% 0;}}
@keyframes ag-indet{0%{left:-35%;}100%{left:100%;}}

.ag-tnode{transform-box:fill-box;transform-origin:center;animation:ag-think 1.5s ease-in-out infinite;}

/* --- screen / view show-hide ------------------------------------------------ */
[data-screen="system"] [data-panel]:not([data-panel="system"]){display:none!important;}
[data-screen="console"] [data-panel]:not([data-panel="console"]){display:none!important;}
[data-screen="docs"] [data-panel]:not([data-panel="docs"]){display:none!important;}
[data-cview="memories"] [data-cpanel]:not([data-cpanel="memories"]){display:none!important;}
[data-cview="digest"] [data-cpanel]:not([data-cpanel="digest"]){display:none!important;}
[data-cview="connectors"] [data-cpanel]:not([data-cpanel="connectors"]){display:none!important;}
