/* ============================================================
   Ubuntu 26.04 LTS — Yaru design tokens
   Values sourced from compiled Yaru theme CSS (26.04.5.1) and
   Yaru sass palette (_yaru-palette.scss, _colors.scss).
   ============================================================ */

:root {
  /* ---- Yaru brand palette ---- */
  --jet: #181818;
  --inkstone: #3D3D3D;
  --slate: #5D5D5D;
  --graphite: #666666;
  --porcelain: #F7F7F7;
  --warm-gray: #AEA79F;
  --ash: #878787;
  --aubergine: #924D8B;
  --purple: #762572;
  --light-aubergine: #77216F;
  --mid-aubergine: #5E2750;
  --dark-aubergine: #2C001E;
  --red: #c7162b;
  --orange: #E95420;
  --yellow: #f99b11;
  --green: #0e8420;
  --blue: #19B6EE;
  --linkblue: #007aa6;
  --darkblue: #335280;

  /* ---- GNOME 50 accent set (libadwaita) + Yaru orange default ---- */
  --accent-blue: #3584e4;
  --accent-teal: #2190a4;
  --accent-green: #3a944a;
  --accent-yellow: #c88800;
  --accent-orange: #E95420;
  --accent-red: #e62d42;
  --accent-pink: #d56199;
  --accent-purple: #9141ac;
  --accent-slate: #6f8396;

  /* ---- accent (swapped by [data-accent]) ---- */
  --accent: #E95420;
  --accent-hover: #f0642f;
  --accent-active: #d84a1a;
  --accent-soft: rgba(233, 84, 32, 0.14);
  --accent-fg: #ffffff;
  --accent-border: rgba(233, 84, 32, 0.55);
  --selection-bg: rgba(233, 84, 32, 0.22);
  --selection-fg: #2c1a12;

  /* ---- spacing / radii (compiled Yaru shell) ---- */
  --radius-s: 8px;        /* buttons */
  --radius-m: 12px;       /* popovers, datemenu */
  --radius-l: 16px;       /* overview tiles */
  --radius-xl: 24px;      /* app tiles */
  --radius-xxl: 28px;     /* dash background */
  --radius-modal: 18px;   /* modal dialogs */
  --radius-pill: 999px;
  --pad-s: 6px;
  --pad-m: 10px;
  --pad-l: 12px;
  --pad-xl: 18px;
  --pad-xxl: 24px;

  /* ---- typography ---- */
  --font: "Ubuntu", "Cantarell", "Ubuntu Sans", system-ui, -apple-system, sans-serif;
  --font-mono: "Ubuntu Mono", "JetBrains Mono", ui-monospace, monospace;
  --fs-xs: 11px;
  --fs-s: 12px;
  --fs-m: 13px;
  --fs-l: 15px;
  --fs-xl: 20px;
  --fs-xxl: 28px;

  /* ---- shell (dark in BOTH themes, per compiled Yaru 26.04) ---- */
  --panel-bg: #131313;
  --panel-fg: #f2f2f2;
  --panel-hover: rgba(242, 242, 242, 0.17);
  --panel-active: rgba(242, 242, 242, 0.28);
  --panel-border: rgba(242, 242, 242, 0.1);
  --dash-bg: #131313;
  --dash-item-hover: rgba(242, 242, 242, 0.10);
  --dash-item-focus: rgba(242, 242, 242, 0.17);
  --dash-item-checked: rgba(242, 242, 242, 0.25);
  --dash-separator: rgba(242, 242, 242, 0.12);
  --overview-bg: #222222;
  --overview-tile-hover: rgba(255, 255, 255, 0.09);
  --overview-tile-focus: rgba(255, 255, 255, 0.15);
  --overview-fg: #f2f2f2;
  --ws-thumb-bg: #3c3c3c;
  --search-entry-bg: rgba(255, 255, 255, 0.12);
  --osd-bg: rgba(27, 27, 27, 0.96);
  --osd-fg: #eeeeec;

  /* ---- app surface (Yaru GTK light) ---- */
  --window-bg: #ffffff;
  --window-fg: #222222;
  --app-bg: #FAFAFA;
  --view-bg: #ffffff;
  --view-fg: #222222;
  --headerbar-bg: #ffffff;
  --headerbar-fg: #222222;
  --headerbar-border: rgba(0, 0, 0, 0.08);
  --sidebar-bg: #FCFCFC;
  --sidebar-fg: #222222;
  --sidebar-active: rgba(34, 34, 34, 0.09);
  --border: #d4d4d4;
  --border-strong: #b8b8b8;
  --fg-dim: #77767b;
  --fg-faint: #9a9996;
  --btn-bg: #F7F7F7;
  --btn-bg-hover: #eeeeee;
  --btn-bg-active: #e4e4e4;
  --btn-border: #c9c9c9;
  --entry-bg: #ffffff;
  --entry-fg: #222222;
  --entry-border: #c0bfbc;
  --entry-focus: rgba(233, 84, 32, 0.55);
  --row-hover: rgba(34, 34, 34, 0.06);
  --row-selected: rgba(233, 84, 32, 0.18);
  --card-bg: #ffffff;
  --card-border: #e1e1e1;
  --menu-bg: #ffffff;
  --menu-fg: #222222;
  --menu-border: rgba(0, 0, 0, 0.06);
  --menu-hover: rgba(34, 34, 34, 0.08);
  --popover-bg: #ffffff;
  --popover-fg: #222222;
  --popover-border: rgba(0, 0, 0, 0.06);
  --dialog-bg: #ffffff;
  --dialog-fg: #222222;
  --notif-bg: #ffffff;
  --notif-fg: #222222;
  --scrollbar: rgba(34, 34, 34, 0.25);
  --scrollbar-hover: rgba(34, 34, 34, 0.45);
  --shadow-1: 0 2px 6px rgba(0, 0, 0, 0.12);
  --shadow-2: 0 6px 18px rgba(0, 0, 0, 0.16);
  --shadow-3: 0 12px 34px rgba(0, 0, 0, 0.22);
  --focus-ring: rgba(233, 84, 32, 0.55);

  /* status */
  --success: #26a269;
  --warning: #c88800;
  --error: #c01c28;
  --error-hover: #a51d2d;
  --success-bg: #e6f5ec;
  --warning-bg: #fdf3dd;
  --error-bg: #fbe5e8;

  --speed-fast: 100ms;
  --speed-normal: 200ms;
  --speed-slow: 350ms;
  --ease-out: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  --ease-spring: cubic-bezier(0.34, 1.35, 0.4, 1);
  --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);

  --panel-height: 38px;
  --dock-icon: 48px;
  --dock-width: 64px;
  --titlebar-height: 40px;

  --workspace-inset: 0px;
}

:root[data-theme="dark"] {
  --window-bg: #222226;
  --window-fg: #ffffff;
  --app-bg: #1d1d20;
  --view-bg: #1d1d20;
  --view-fg: #ffffff;
  --headerbar-bg: #2e2e32;
  --headerbar-fg: #ffffff;
  --headerbar-border: rgba(255, 255, 255, 0.06);
  --sidebar-bg: #2e2e32;
  --sidebar-fg: #ffffff;
  --sidebar-active: rgba(255, 255, 255, 0.12);
  --border: #3d3d42;
  --border-strong: #4e4e54;
  --fg-dim: #9c9ca1;
  --fg-faint: #77767b;
  --btn-bg: #2e2e32;
  --btn-bg-hover: #3a3a3f;
  --btn-bg-active: #44444a;
  --btn-border: #45454b;
  --entry-bg: #1d1d20;
  --entry-fg: #ffffff;
  --entry-border: #4a4a50;
  --entry-focus: rgba(233, 84, 32, 0.6);
  --row-hover: rgba(255, 255, 255, 0.08);
  --row-selected: rgba(233, 84, 32, 0.28);
  --card-bg: #28282c;
  --card-border: #38383d;
  --menu-bg: #2e2e32;
  --menu-fg: #ffffff;
  --menu-border: rgba(255, 255, 255, 0.06);
  --menu-hover: rgba(255, 255, 255, 0.1);
  --popover-bg: #2e2e32;
  --popover-fg: #ffffff;
  --notif-bg: #2e2e32;
  --notif-fg: #ffffff;
  --dialog-bg: #222226;
  --dialog-fg: #ffffff;
  --scrollbar: rgba(255, 255, 255, 0.25);
  --scrollbar-hover: rgba(255, 255, 255, 0.45);
  --shadow-1: 0 2px 6px rgba(0, 0, 0, 0.35);
  --shadow-2: 0 6px 18px rgba(0, 0, 0, 0.45);
  --shadow-3: 0 12px 34px rgba(0, 0, 0, 0.55);
  --focus-ring: rgba(233, 84, 32, 0.65);
  --selection-bg: rgba(233, 84, 32, 0.35);
  --selection-fg: #ffffff;
  --success-bg: #12381f;
  --warning-bg: #3d3007;
  --error-bg: #43131a;
}

/* accent variants */
:root[data-accent="blue"]   { --accent: #3584e4; --accent-hover: #4895ea; --accent-active: #2c74cd; --accent-soft: rgba(53,132,228,.15); --accent-fg: #fff; --accent-border: rgba(53,132,228,.55); --focus-ring: rgba(53,132,228,.6); --row-selected: rgba(53,132,228,.2); --selection-bg: rgba(53,132,228,.25); }
:root[data-accent="teal"]   { --accent: #2190a4; --accent-hover: #27a0b6; --accent-active: #1c7f91; --accent-soft: rgba(33,144,164,.15); --accent-fg: #fff; --accent-border: rgba(33,144,164,.55); --focus-ring: rgba(33,144,164,.6); --row-selected: rgba(33,144,164,.2); --selection-bg: rgba(33,144,164,.25); }
:root[data-accent="green"]  { --accent: #3a944a; --accent-hover: #43a455; --accent-active: #328441; --accent-soft: rgba(58,148,74,.15); --accent-fg: #fff; --accent-border: rgba(58,148,74,.55); --focus-ring: rgba(58,148,74,.6); --row-selected: rgba(58,148,74,.2); --selection-bg: rgba(58,148,74,.25); }
:root[data-accent="yellow"] { --accent: #c88800; --accent-hover: #db9400; --accent-active: #b57a00; --accent-soft: rgba(200,136,0,.16); --accent-fg: #fff; --accent-border: rgba(200,136,0,.55); --focus-ring: rgba(200,136,0,.6); --row-selected: rgba(200,136,0,.22); --selection-bg: rgba(200,136,0,.28); }
:root[data-accent="orange"] { --accent: #E95420; --accent-hover: #f0642f; --accent-active: #d84a1a; --accent-soft: rgba(233,84,32,.15); --accent-fg: #fff; --accent-border: rgba(233,84,32,.55); --focus-ring: rgba(233,84,32,.6); --row-selected: rgba(233,84,32,.2); --selection-bg: rgba(233,84,32,.25); }
:root[data-accent="red"]    { --accent: #e62d42; --accent-hover: #ea4256; --accent-active: #d32236; --accent-soft: rgba(230,45,66,.15); --accent-fg: #fff; --accent-border: rgba(230,45,66,.55); --focus-ring: rgba(230,45,66,.6); --row-selected: rgba(230,45,66,.2); --selection-bg: rgba(230,45,66,.25); }
:root[data-accent="pink"]   { --accent: #d56199; --accent-hover: #dc74a7; --accent-active: #c9528c; --accent-soft: rgba(213,97,153,.15); --accent-fg: #fff; --accent-border: rgba(213,97,153,.55); --focus-ring: rgba(213,97,153,.6); --row-selected: rgba(213,97,153,.2); --selection-bg: rgba(213,97,153,.25); }
:root[data-accent="purple"] { --accent: #9141ac; --accent-hover: #a049bb; --accent-active: #813a9a; --accent-soft: rgba(145,65,172,.15); --accent-fg: #fff; --accent-border: rgba(145,65,172,.55); --focus-ring: rgba(145,65,172,.6); --row-selected: rgba(145,65,172,.2); --selection-bg: rgba(145,65,172,.25); }
:root[data-accent="slate"]  { --accent: #6f8396; --accent-hover: #7d91a4; --accent-active: #627689; --accent-soft: rgba(111,131,150,.15); --accent-fg: #fff; --accent-border: rgba(111,131,150,.55); --focus-ring: rgba(111,131,150,.6); --row-selected: rgba(111,131,150,.2); --selection-bg: rgba(111,131,150,.25); }
