/* Agentic Solutions — official brand theme (per the Brand Guidelines).
   Colour: Chalk canvas, Graphite ink, Rust for emphasis, Iris + Turquoise as the
   logo's vibrant pops. Type: Noto Serif for headers, Roboto for body. "Clean, but
   never cold." Injected globally after each page's own stylesheet, so these
   design-token + !important overrides win across the portal and every app. */
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif:ital,wght@0,500;0,600;1,500&family=Roboto:ital,wght@0,400;0,500;0,700;1,400&display=swap');

:root, [data-theme="dark"], [data-theme="light"]{
  /* Core palette */
  --brand-rust:#cc775f; --brand-graphite:#2b2929; --brand-chalk:#f0eee6;
  --brand-iris:#7d69f3; --brand-turquoise:#30d5bf;
  --brand-smoke:#767373; --brand-snow:#faf9f5;

  --bg:#f0eee6; --surface:#faf9f5; --surface-2:#faf9f5;
  --card:#faf9f5; --card-hover:#f6f3ea;
  --border:#e4ded2; --border-acc:#d7cfbf;
  --accent:#cc775f; --accent-2:#cc775f; --accent-dim:#b3634d; --accent-glow:rgba(0,0,0,0);
  --text:#2b2929; --text-sub:#767373; --text-muted:#9c968f; --muted:#9c968f;
  --radius:14px; --radius-sm:11px; --radius-xs:8px;
  --font:'Roboto',system-ui,sans-serif; --mono:ui-monospace,'SF Mono',Menlo,monospace;
  --success:#2f9e5b; --ok:#2f9e5b; --error:#c0432f; --danger:#c0432f; --warn:#df9349; --warning:#df9349;
}

/* App data-viz + semantic palette → brand. Each app declares these in its own
   :root (dark) and [data-theme="light"]; override all three selectors so timelines,
   charts, badges and status chips render in brand colours in every mode. The two
   scheduling pools map to the two non-Rust logo colours (Iris + Turquoise);
   available/warn/info draw from the tertiary palette (Mint/Amber/Ocean). */
:root, [data-theme="dark"], [data-theme="light"]{
  --surface-2:#f4f1e8; --panel:#faf9f5; --panel-2:#f4f1e8;
  --labor:#7d69f3; --labor-dim:#5f4fd0;              /* Iris */
  --equipment:#30d5bf; --equipment-dim:#1fb3a0;      /* Turquoise */
  --teal:#30d5bf;
  --avail:#33a06a; --green:#33a06a; --green-dim:#268052; --good:#33a06a; --ok:#2f9e5b; --success:#2f9e5b;
  --busy-color:#c0432f; --conflict:#c0432f; --error:#c0432f; --danger:#c0432f; --bad:#c0432f; --override-ring:#c0432f;
  --partial:#df9349; --warn:#df9349; --warning:#df9349; --amber:#df9349;
  --gold:#e0b348;
  --vis-group-color:#2b2929; --vis-label-bg:#faf9f5;
  /* Gordon CRM status chips */
  --status-new:#7d69f3; --status-contacted:#df9349; --status-active:#30d5bf;
  --status-open:#3bc5c4; --status-closed:#767373; --status-upcoming:#7d69f3;
  --status-deadline:#c0432f; --status-unknown:#9c968f;
}
body{font-family:'Roboto',system-ui,sans-serif!important;background:#f0eee6!important;color:#2b2929!important;-webkit-font-smoothing:antialiased}

/* Headers — Noto Serif (editorial), mixed case */
h1,h2,h3,.app-title h1{font-family:'Noto Serif',Georgia,serif!important;font-weight:500!important;letter-spacing:-.01em!important;text-transform:none!important;color:#2b2929!important}

/* The wordmark IS the official logo lockup (icon + wordmark) from the brand
   guidelines, exported to a transparent PNG. Swap the text for the image; the
   text stays in the DOM (indented off-screen) for screen readers. Aspect 3.46:1. */
.portal-brand,.login-logo-title{
  display:inline-block!important;vertical-align:middle!important;
  background:url('/portal-static/brand-logo.png') left center/contain no-repeat!important;
  height:1.95em!important;width:6.75em!important;
  text-indent:-9999px!important;overflow:hidden!important;white-space:nowrap!important}
.login-logo-title{height:2.4em!important;width:8.3em!important}
.login-logo-sub{color:#767373!important;letter-spacing:.02em}

header,.app-header,.portal-header{background:rgba(240,238,230,.86)!important;border-bottom:1px solid #e4ded2!important;box-shadow:none!important;backdrop-filter:blur(10px)}
.panel,.card,.login-card,section.panel,.modal{background:#faf9f5!important;border:1px solid #e4ded2!important;box-shadow:0 8px 24px rgba(43,41,41,.06)!important}
nav.tabs,.tabs{border-bottom:1px solid #e4ded2!important}
/* Primary actions lead in Iris (a bright core/logo colour); Rust stays for links,
   tabs and text emphasis — its intended role per the guidelines. */
button,.btn,.btn-primary{background:#7d69f3!important;color:#faf9f5!important;border:0!important;font-weight:600!important}
button:hover,.btn-primary:hover{background:#6a55e0!important}
.btn-back,.btn-secondary{background:transparent!important;border:1px solid #e4ded2!important;color:#767373!important}

/* Tactile "chalk-chip" header buttons: soft warm chips that lift and glow Rust on
   hover, press down on click. Primary actions stay solid Rust so they lead. */
.header-actions .pill,.header-actions button,
.app-header button,.app-header .tb-btn,.app-header a.btn-back,
.btn-back,.tock-controls .tb-btn{
  background:linear-gradient(180deg,#fdfcf9,#f4f1e8)!important;color:#767373!important;
  border:1px solid #e7e0d2!important;border-radius:9px!important;font-weight:500!important;
  box-shadow:0 1px 2px rgba(43,41,41,.10),inset 0 1px 0 rgba(255,255,255,.7)!important;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease,color .16s ease,border-color .16s ease!important}
.header-actions .pill:hover,.header-actions button:hover,
.app-header button:hover,.app-header .tb-btn:hover,.btn-back:hover,
.tock-controls .tb-btn:hover{
  background:linear-gradient(180deg,#8b78f5,#7d69f3)!important;color:#faf9f5!important;
  border-color:#5f4fd0!important;transform:translateY(-1px)!important;
  box-shadow:0 5px 14px rgba(125,105,243,.32),inset 0 1px 0 rgba(255,255,255,.25)!important}
.header-actions .pill:active,.header-actions button:active,
.app-header button:active,.app-header .tb-btn:active,.btn-back:active,
.tock-controls .tb-btn:active{
  transform:translateY(0)!important;box-shadow:0 1px 3px rgba(140,60,45,.35) inset!important}
.app-header .tb-btn.primary,.tock-controls .tb-btn.primary,.header-actions .pill.primary{
  background:linear-gradient(180deg,#8b78f5,#7d69f3)!important;color:#faf9f5!important;
  border:1px solid #5f4fd0!important;box-shadow:0 2px 8px rgba(125,105,243,.30),inset 0 1px 0 rgba(255,255,255,.25)!important}
.app-header .tb-btn.primary:hover,.tock-controls .tb-btn.primary:hover{
  background:linear-gradient(180deg,#6a55e0,#5f4fd0)!important;transform:translateY(-1px)!important;
  box-shadow:0 6px 16px rgba(106,85,224,.34)!important}
input,select,textarea{background:#ffffff!important;border:1px solid #e4ded2!important;color:#2b2929!important}
input:focus,select:focus,textarea:focus{border-color:#cc775f!important;outline:none}
a{color:#cc775f}
.muted,.text-muted{color:#9c968f!important}

/* Tabs — flat bar with a Rust underline on the active tab */
.tab,.tab-btn,nav.tabs button,.tabs button,.tab-bar button,.tab-bar .tab-btn{
  background:transparent!important;color:#767373!important;border:0!important;
  border-bottom:2px solid transparent!important;border-radius:0!important;
  box-shadow:none!important;font-weight:600!important}
.tab:hover,.tab-btn:hover,.tab-bar button:hover{
  background:rgba(204,119,95,.07)!important;color:#2b2929!important}
.tab.active,.tab-btn.active,.tab-bar .active,.tabs .active{
  background:transparent!important;color:#cc775f!important;
  border-bottom:2px solid #cc775f!important}
.tabs,nav.tabs,.tab-bar{background:transparent!important;border-bottom:1px solid #e4ded2!important}

/* Inline metric / KPI cells — warm cream instead of cold grey */
.stat{background:#f4efe6!important;border:1px solid #e9e1d2!important;box-shadow:none!important}

/* Statistician's guided (Mad-Libs) brief — keep the fill-in-the-blank underline + chips */
.madlib{background:#faf9f5!important;border:1px solid #e4ded2!important}
input.ml,select.ml{background:transparent!important;border:0!important;
  border-bottom:1px dashed #cc775f!important;border-radius:0!important;
  width:auto!important;box-shadow:none!important;color:#2b2929!important}
input.ml:focus,select.ml:focus{border-bottom:1px solid #cc775f!important;background:#fdfcf9!important}
.mode-btn{background:linear-gradient(180deg,#fdfcf9,#f4f1e8)!important;color:#767373!important;
  border:1px solid #e7e0d2!important;border-radius:20px!important;font-weight:500!important;box-shadow:none!important}
.mode-btn:hover{color:#2b2929!important}
.mode-btn.active{background:rgba(204,119,95,.12)!important;color:#cc775f!important;border-color:#cc775f!important}

/* Landing "conference table" — retint the wood-brown to a warm walnut that settles
   into Graphite, so it harmonizes with the Chalk canvas + Rust rather than clashing */
.table{ background:linear-gradient(165deg,#9c604a 0%,#6d4738 55%,#39302c 100%)!important;
  border-color:#7d4c3a!important }
