/* TakeOne Colors 2.0 — Context Engine / v13.1.0 */
:where(.takeone-builder-v7,.tb7-studio,.takeone-studio){
  --tb7-context-surface:var(--agk-surface);
  --tb7-context-surface-alt:var(--agk-surface-alt);
  --tb7-context-heading:var(--agk-heading);
  --tb7-context-text:var(--agk-text);
  --tb7-context-muted:var(--agk-muted);
  --tb7-context-link:var(--agk-link);
  --tb7-context-border:var(--agk-border);
  --tb7-context-icon:var(--agk-link);
  --tb7-context-accent:var(--agk-link);
}
.tb7-color-context-light{--tb7-context-surface:var(--agk-on-light-surface);--tb7-context-surface-alt:var(--agk-on-light-surface-alt);--tb7-context-heading:var(--agk-on-light-heading);--tb7-context-text:var(--agk-on-light-text);--tb7-context-muted:var(--agk-on-light-muted);--tb7-context-link:var(--agk-on-light-link);--tb7-context-border:var(--agk-on-light-border);--tb7-context-icon:var(--agk-on-light-icon);--tb7-context-accent:var(--agk-on-light-accent)}
.tb7-color-context-dark{--tb7-context-surface:var(--agk-on-dark-surface);--tb7-context-surface-alt:var(--agk-on-dark-surface-alt);--tb7-context-heading:var(--agk-on-dark-heading);--tb7-context-text:var(--agk-on-dark-text);--tb7-context-muted:var(--agk-on-dark-muted);--tb7-context-link:var(--agk-on-dark-link);--tb7-context-border:var(--agk-on-dark-border);--tb7-context-icon:var(--agk-on-dark-icon);--tb7-context-accent:var(--agk-on-dark-accent)}
.tb7-color-context-brand{--tb7-context-surface:var(--agk-on-brand-surface);--tb7-context-surface-alt:var(--agk-on-brand-surface-alt);--tb7-context-heading:var(--agk-on-brand-heading);--tb7-context-text:var(--agk-on-brand-text);--tb7-context-muted:var(--agk-on-brand-muted);--tb7-context-link:var(--agk-on-brand-link);--tb7-context-border:var(--agk-on-brand-border);--tb7-context-icon:var(--agk-on-brand-icon);--tb7-context-accent:var(--agk-on-brand-accent)}
.tb7-color-context-elevated{--tb7-context-surface:var(--agk-surface-elevated);--tb7-context-surface-alt:var(--agk-surface);--tb7-context-heading:var(--agk-heading);--tb7-context-text:var(--agk-text);--tb7-context-muted:var(--agk-muted);--tb7-context-link:var(--agk-link);--tb7-context-border:var(--agk-border);--tb7-context-icon:var(--agk-link);--tb7-context-accent:var(--agk-link)}
/* Context-aware content. Local Override nodes are deliberately excluded. */
.tb7-node:not(.tb7-local-color-override)>.tb7-heading-text{color:var(--tb7-context-heading,var(--agk-heading))!important}
.tb7-node:not(.tb7-local-color-override)>.tb7-richtext{color:var(--tb7-context-text,var(--agk-text))!important}
.tb7-node:not(.tb7-local-color-override) :where(.tb7-iconbox-copy h3,.tb7-card h3,.tb7-post-copy h3,.tb7-department-intro h2,.tb7-department-card h3,.tb7-testimonial strong){color:var(--tb7-context-heading,var(--agk-heading))}
.tb7-node:not(.tb7-local-color-override) :where(.tb7-iconbox-copy p,.tb7-card p,.tb7-post-copy p,.tb7-department-intro p,.tb7-department-card p,.tb7-testimonial p){color:var(--tb7-context-muted,var(--agk-muted))}
.tb7-node:not(.tb7-local-color-override) :where(.tb7-department-link,.tb7-post-link,a.tb7-card-link){color:var(--tb7-context-link,var(--agk-link))}
.tb7-node:not(.tb7-local-color-override) .tb7-stat-icon{color:var(--tb7-context-icon,var(--agk-link))!important}
.tb7-node:not(.tb7-local-color-override) .tb7-stats strong{color:var(--tb7-context-accent,var(--agk-link))!important}
.tb7-node:not(.tb7-local-color-override) .tb7-stat-label{color:var(--tb7-context-muted,var(--agk-muted))!important}
/* Brand presets establish Brand Context instead of carrying a second palette. */
.takeone-builder-v7 .tb7-stats.preset-executive,
.takeone-builder-v7 .tb7-icon-box.preset-executive{--tb7-context-surface:var(--agk-on-brand-surface);--tb7-context-heading:var(--agk-on-brand-heading);--tb7-context-text:var(--agk-on-brand-text);--tb7-context-muted:var(--agk-on-brand-muted);--tb7-context-link:var(--agk-on-brand-link);--tb7-context-border:var(--agk-on-brand-border);--tb7-context-icon:var(--agk-on-brand-icon);--tb7-context-accent:var(--agk-on-brand-heading)}
.takeone-builder-v7 .tb7-stats.preset-executive article{background:var(--agk-on-brand-surface)!important;border-color:var(--agk-on-brand-border)!important;color:var(--agk-on-brand-text)!important}
/* System-controlled surfaces follow every supported Dark Engine selector. */
:is(html[data-agk-theme="dark"],body.dark-mode,body[data-theme="dark"],body[data-agk-theme="dark"]) :where(.takeone-builder-v7,.agk-site-shell,.agkc-page){background-color:var(--agk-page);color:var(--agk-text)}
:is(html[data-agk-theme="dark"],body.dark-mode,body[data-theme="dark"],body[data-agk-theme="dark"]) .takeone-builder-v7 :where(.tb7-card,.tb7-post-card,.tb7-content-card,.tb7-comm-card,.tb7-tabs-panel,.tb7-accordion details):not(.tb7-local-color-override){background-color:var(--agk-surface);border-color:var(--agk-border);color:var(--agk-text)}
/* Light legacy container paints are semantic in system mode: the renderer maps them to
   --agk-surface, so page sections change with Light/Dark instead of leaving white islands. */
.takeone-builder-v7 .tb7-node.tb7-container:not(.tb7-local-color-override)>.tb7-container-shell>.tb7-container-bg{transition:background-color .18s ease,background .18s ease}
/* Components that own a Brand surface explicitly consume On Brand roles. */
.takeone-builder-v7 .tb7-node.tb7-color-context-brand:not(.tb7-local-color-override) :where(.tb7-department-intro h2,.tb7-department-card-copy h3,.tb7-stats strong,.tb7-iconbox-copy h3){color:var(--agk-on-brand-heading)!important}
.takeone-builder-v7 .tb7-node.tb7-color-context-brand:not(.tb7-local-color-override) :where(.tb7-department-intro p,.tb7-department-card-copy p,.tb7-stat-label,.tb7-iconbox-copy p){color:var(--agk-on-brand-muted)!important}
.takeone-builder-v7 .tb7-node.tb7-color-context-brand:not(.tb7-local-color-override) :where(.tb7-department-link,.tb7-stat-icon,.tb7-iconbox-icon){color:var(--agk-on-brand-icon)!important}
/* Department tone compatibility: old tone CSS may still exist in saved documents, but
   semantic context wins for foreground roles while geometry remains untouched. */
.takeone-builder-v7 .tb7-node.tb7-color-context-brand:not(.tb7-local-color-override) .tb7-department{--tb7-dept-title:var(--agk-on-brand-heading)!important;--tb7-dept-text:var(--agk-on-brand-text)!important;--tb7-dept-muted:var(--agk-on-brand-muted)!important;--tb7-dept-accent:var(--agk-on-brand-link)!important;--tb7-dept-date:var(--agk-on-brand-link)!important}
.takeone-builder-v7 .tb7-node.tb7-color-context-dark:not(.tb7-local-color-override) .tb7-department{--tb7-dept-title:var(--agk-on-dark-heading)!important;--tb7-dept-text:var(--agk-on-dark-text)!important;--tb7-dept-muted:var(--agk-on-dark-muted)!important;--tb7-dept-accent:var(--agk-on-dark-link)!important}


/* v13.1.0 — Core component context parity. Geometry/presets stay component-owned;
   system color authority owns surfaces and readable foregrounds. */
.takeone-builder-v7 .tb7-node:not(.tb7-local-color-override)>.tb7-card{
  --tb7-card-bg:var(--tb7-context-surface)!important;
  --tb7-card-border:var(--tb7-context-border)!important;
  color:var(--tb7-context-text)!important;
}
.takeone-builder-v7 .tb7-node:not(.tb7-local-color-override)>.tb7-card.preset-soft{background:var(--tb7-context-surface-alt)!important}
.takeone-builder-v7 .tb7-node:not(.tb7-local-color-override)>.tb7-card.preset-glass{background:color-mix(in srgb,var(--tb7-context-surface) 78%,transparent)!important}
.takeone-builder-v7 .tb7-node:not(.tb7-local-color-override)>.tb7-card :where(h1,h2,h3,h4,strong){color:var(--tb7-context-heading)!important}
.takeone-builder-v7 .tb7-node:not(.tb7-local-color-override)>.tb7-card :where(p,small){color:var(--tb7-context-muted)!important}
.takeone-builder-v7 .tb7-node:not(.tb7-local-color-override)>.tb7-card :where(a,.tb7-card-link){color:var(--tb7-context-link)!important}

.takeone-builder-v7 .tb7-node:not(.tb7-local-color-override)>.tb7-stats.preset-cards article,
.takeone-builder-v7 .tb7-node:not(.tb7-local-color-override)>.tb7-stats.preset-glass article{
  background:var(--tb7-context-surface)!important;
  border-color:var(--tb7-context-border)!important;
  color:var(--tb7-context-text)!important;
}
.takeone-builder-v7 .tb7-node.tb7-color-context-brand:not(.tb7-local-color-override)>.tb7-stats :where(article){
  background:color-mix(in srgb,var(--agk-on-brand-heading) 6%,var(--agk-on-brand-surface))!important;
  border-color:var(--agk-on-brand-border)!important;
}
.takeone-builder-v7 .tb7-node.tb7-color-context-brand:not(.tb7-local-color-override)>.tb7-stats strong{color:var(--agk-on-brand-heading)!important}
.takeone-builder-v7 .tb7-node.tb7-color-context-brand:not(.tb7-local-color-override)>.tb7-stats .tb7-stat-label{color:var(--agk-on-brand-muted)!important}
.takeone-builder-v7 .tb7-node.tb7-color-context-brand:not(.tb7-local-color-override)>.tb7-stats .tb7-stat-icon{color:var(--agk-on-brand-icon)!important}

.takeone-builder-v7 .tb7-node:not(.tb7-local-color-override) :where(.tb7-post-card,.tb7-loop-item){
  background:var(--tb7-context-surface)!important;
  border-color:var(--tb7-context-border)!important;
  color:var(--tb7-context-text)!important;
}
.takeone-builder-v7 .tb7-node:not(.tb7-local-color-override) .tb7-post-card.preset-soft{background:var(--tb7-context-surface-alt)!important}
.takeone-builder-v7 .tb7-node:not(.tb7-local-color-override) .tb7-post-copy h3{color:var(--tb7-context-heading)!important}
.takeone-builder-v7 .tb7-node:not(.tb7-local-color-override) .tb7-post-copy :where(p,time){color:var(--tb7-context-muted)!important}
.takeone-builder-v7 .tb7-node:not(.tb7-local-color-override) .tb7-post-link{color:var(--tb7-context-link)!important}

.takeone-builder-v7 .tb7-node:not(.tb7-local-color-override) :where(.tb7-tabs-panel,.tb7-accordion details,.tb7-testimonial){
  border-color:var(--tb7-context-border)!important;
  color:var(--tb7-context-text)!important;
}
.takeone-builder-v7 .tb7-node:not(.tb7-local-color-override) :where(.tb7-tabs,.tb7-accordion,.tb7-timeline,.tb7-testimonial) :where(h2,h3,h4,summary,strong){color:var(--tb7-context-heading)!important}
.takeone-builder-v7 .tb7-node:not(.tb7-local-color-override) :where(.tb7-tabs,.tb7-accordion,.tb7-timeline,.tb7-testimonial) :where(p,span){color:var(--tb7-context-muted)}

/* Explicit Light Context inside a dark page remains light and receives dark foregrounds;
   AUTO surfaces remain mode-responsive. */
:is(html[data-agk-theme="dark"],body.dark-mode,body[data-theme="dark"],body[data-agk-theme="dark"]) .takeone-builder-v7 .tb7-node.tb7-color-context-light:not(.tb7-local-color-override){color:var(--agk-on-light-text)}


/* v13.1.1 — TakeOne Actions 1.0
 * Generic action tokens are remapped by the owning surface context. The button
 * component keeps its variant/geometry; only semantic paint changes. */
:where(.tb7-color-context-light,.takeone-color-context-light,[data-color-context="light"]){
  --agk-action-primary-bg:var(--agk-action-light-primary-bg);--agk-action-primary-text:var(--agk-action-light-primary-text);--agk-action-primary-border:var(--agk-action-light-primary-border);--agk-action-primary-hover:var(--agk-action-light-primary-hover);--agk-action-primary-hover-text:var(--agk-action-light-primary-hover-text);--agk-action-primary-hover-border:var(--agk-action-light-primary-hover-border);
  --agk-action-secondary-bg:var(--agk-action-light-secondary-bg);--agk-action-secondary-text:var(--agk-action-light-secondary-text);--agk-action-secondary-border:var(--agk-action-light-secondary-border);--agk-action-secondary-hover-bg:var(--agk-action-light-secondary-hover-bg);--agk-action-secondary-hover-text:var(--agk-action-light-secondary-hover-text);--agk-action-secondary-hover-border:var(--agk-action-light-secondary-hover-border);--agk-button-paint:var(--agk-action-primary-bg)
}
:where(.tb7-color-context-dark,.takeone-color-context-dark,[data-color-context="dark"]){
  --agk-action-primary-bg:var(--agk-action-dark-primary-bg);--agk-action-primary-text:var(--agk-action-dark-primary-text);--agk-action-primary-border:var(--agk-action-dark-primary-border);--agk-action-primary-hover:var(--agk-action-dark-primary-hover);--agk-action-primary-hover-text:var(--agk-action-dark-primary-hover-text);--agk-action-primary-hover-border:var(--agk-action-dark-primary-hover-border);
  --agk-action-secondary-bg:var(--agk-action-dark-secondary-bg);--agk-action-secondary-text:var(--agk-action-dark-secondary-text);--agk-action-secondary-border:var(--agk-action-dark-secondary-border);--agk-action-secondary-hover-bg:var(--agk-action-dark-secondary-hover-bg);--agk-action-secondary-hover-text:var(--agk-action-dark-secondary-hover-text);--agk-action-secondary-hover-border:var(--agk-action-dark-secondary-hover-border);--agk-button-paint:var(--agk-action-primary-bg)
}
:where(.tb7-color-context-brand,.takeone-color-context-brand,[data-color-context="brand"]){
  --agk-action-primary-bg:var(--agk-action-brand-primary-bg);--agk-action-primary-text:var(--agk-action-brand-primary-text);--agk-action-primary-border:var(--agk-action-brand-primary-border);--agk-action-primary-hover:var(--agk-action-brand-primary-hover);--agk-action-primary-hover-text:var(--agk-action-brand-primary-hover-text);--agk-action-primary-hover-border:var(--agk-action-brand-primary-hover-border);
  --agk-action-secondary-bg:var(--agk-action-brand-secondary-bg);--agk-action-secondary-text:var(--agk-action-brand-secondary-text);--agk-action-secondary-border:var(--agk-action-brand-secondary-border);--agk-action-secondary-hover-bg:var(--agk-action-brand-secondary-hover-bg);--agk-action-secondary-hover-text:var(--agk-action-brand-secondary-hover-text);--agk-action-secondary-hover-border:var(--agk-action-brand-secondary-hover-border);--agk-button-paint:var(--agk-action-primary-bg)
}
/* Variants consume Primary/Secondary roles uniformly in Builder, Studio and frontend. */
:where(.takeone-builder-v7,.takeone-studio,.tb7-studio,.agk-site-shell) .tb7-button:not(.tb7-local-color-override):where(.variant-solid,.variant-pill,.variant-gradient){--tb7-btn-bg:var(--agk-action-primary-bg);--tb7-btn-color:var(--agk-action-primary-text);--tb7-btn-border:var(--agk-action-primary-border);--tb7-btn-hover-bg:var(--agk-action-primary-hover);--tb7-btn-hover-color:var(--agk-action-primary-hover-text);--tb7-btn-hover-border:var(--agk-action-primary-hover-border)}
:where(.takeone-builder-v7,.takeone-studio,.tb7-studio,.agk-site-shell) .tb7-button:not(.tb7-local-color-override):where(.variant-outline,.variant-soft,.variant-ghost,.variant-text){--tb7-btn-bg:var(--agk-action-secondary-bg);--tb7-btn-color:var(--agk-action-secondary-text);--tb7-btn-border:var(--agk-action-secondary-border);--tb7-btn-hover-bg:var(--agk-action-secondary-hover-bg);--tb7-btn-hover-color:var(--agk-action-secondary-hover-text);--tb7-btn-hover-border:var(--agk-action-secondary-hover-border)}
:where(.agk-button,.agk-btn,.tb7-button,.tb-btn,.agk-search-trigger,.agk-dark-toggle,.agk-menu-toggle):focus-visible{outline:0;box-shadow:0 0 0 3px color-mix(in srgb,var(--agk-action-primary-border,var(--agk-primary)) 28%,transparent)}
:where(.agk-button,.agk-btn,.tb7-button,.tb-btn):active{transform:translateY(1px)}
:where(.agk-button,.agk-btn,.tb7-button,.tb-btn):disabled,:where(.agk-button,.agk-btn,.tb7-button,.tb-btn)[aria-disabled="true"]{opacity:.48;filter:saturate(.55);pointer-events:none;box-shadow:none}
:where(.takeone-builder-v7,.takeone-studio,.tb7-studio,.agk-site-shell) .tb7-button.variant-gradient:not(.tb7-local-color-override){background:var(--agk-button-paint,var(--agk-action-primary-bg));color:var(--agk-action-primary-text);border-color:var(--agk-action-primary-border)}


/* v13.1.4 — Recovery Color Safety
 * Visual preset names no longer force Brand paint. Nested contrast surfaces establish
 * their own readable context instead of inheriting the parent's foreground blindly. */
.takeone-builder-v7.takeone-colors-locked .tb7-node:not(.tb7-color-context-brand):not(.tb7-local-color-override)>.tb7-stats.preset-executive,
.takeone-builder-v7.takeone-colors-locked .tb7-node:not(.tb7-color-context-brand):not(.tb7-local-color-override)>.tb7-icon-box.preset-executive{
  background:var(--tb7-context-surface-alt,var(--agk-surface-alt))!important;
  color:var(--tb7-context-text,var(--agk-text))!important;
  border-color:var(--tb7-context-border,var(--agk-border))!important;
}
.takeone-builder-v7 .tb7-node:not(.tb7-local-color-override)>.tb7-stats strong{
  color:var(--tb7-context-heading,var(--agk-heading))!important;
}
.takeone-builder-v7 .tb7-node:not(.tb7-local-color-override)>.tb7-stats .tb7-stat-icon{
  color:var(--tb7-context-link,var(--agk-link))!important;
}
/* Department/article cards are elevated contrast surfaces inside Brand blocks. */
.takeone-builder-v7 .tb7-node.tb7-color-context-brand:not(.tb7-local-color-override) .tb7-department-card{
  --tb7-context-surface:var(--agk-on-light-surface,var(--agk-surface));
  --tb7-context-surface-alt:var(--agk-on-light-surface-alt,var(--agk-surface-alt));
  --tb7-context-heading:var(--agk-on-light-heading,var(--agk-heading));
  --tb7-context-text:var(--agk-on-light-text,var(--agk-text));
  --tb7-context-muted:var(--agk-on-light-muted,var(--agk-muted));
  --tb7-context-link:var(--agk-on-light-link,var(--agk-link));
  --tb7-context-border:var(--agk-on-light-border,var(--agk-border));
  background:var(--tb7-context-surface)!important;
  border-color:var(--tb7-context-border)!important;
  color:var(--tb7-context-text)!important;
}
.takeone-builder-v7 .tb7-node.tb7-color-context-brand:not(.tb7-local-color-override) .tb7-department-card :where(h3,h3 a){color:var(--tb7-context-heading)!important}
.takeone-builder-v7 .tb7-node.tb7-color-context-brand:not(.tb7-local-color-override) .tb7-department-card :where(p,time){color:var(--tb7-context-muted)!important}
:is(html[data-agk-theme="dark"],body.dark-mode,body[data-theme="dark"],body[data-agk-theme="dark"]) .takeone-builder-v7 .tb7-node.tb7-color-context-brand:not(.tb7-local-color-override) .tb7-department-card{
  --tb7-context-surface:var(--agk-on-dark-surface,var(--agk-surface));
  --tb7-context-surface-alt:var(--agk-on-dark-surface-alt,var(--agk-surface-alt));
  --tb7-context-heading:var(--agk-on-dark-heading,var(--agk-heading));
  --tb7-context-text:var(--agk-on-dark-text,var(--agk-text));
  --tb7-context-muted:var(--agk-on-dark-muted,var(--agk-muted));
  --tb7-context-link:var(--agk-on-dark-link,var(--agk-link));
  --tb7-context-border:var(--agk-on-dark-border,var(--agk-border));
}
