/* Shared brand identity. Machine, warning, toolpath and NC token colors stay semantic. */
:root{--brand-paper:#f5f4ef;--brand-ink:#252923;--brand-muted:#68715f;--brand-line:#dedfd5;--brand-orange:#e66f3b;--brand-olive:#526747;--brand-soft:#e8ecdf}
.brand-icon{display:block;flex:0 0 auto;width:40px;height:40px;object-fit:contain;border-radius:10px}
.unified-brand{display:inline-flex;align-items:center;gap:12px;font:18px system-ui,sans-serif;white-space:nowrap;text-decoration:none;color:var(--brand-ink)}
body:is(.page-members,.page-cam,.page-modeling,.page-tools,.page-docs){background:var(--brand-paper);color:var(--brand-ink);--orange:var(--brand-orange);--line:var(--brand-line);--muted:#74786e;--navy:var(--brand-ink);--accent:var(--brand-olive)}
body:is(.page-members,.page-cam,.page-modeling,.page-tools,.page-docs) a{color:var(--brand-olive)}
body:is(.page-members,.page-cam,.page-modeling,.page-tools) :is(button,input,select,textarea):not(#viewport-wrap *){border-color:var(--brand-line);accent-color:var(--brand-olive)}
body:is(.page-members,.page-cam,.page-modeling,.page-tools) :is(input,select,textarea):not(#viewport-wrap *){color:var(--brand-ink)}
body:is(.page-members,.page-cam,.page-modeling,.page-tools) :is(button,a,input,select,textarea):focus-visible{outline:2px solid var(--brand-orange);outline-offset:3px}
body:is(.page-members,.page-cam,.page-modeling,.page-tools) .primary{background:var(--brand-orange);border-color:var(--brand-orange);color:#fff}
body:is(.page-members,.page-cam,.page-modeling,.page-tools) .primary:hover{background:#ce5927;border-color:#ce5927;color:white}
.page-members .member-nav,.page-cam .topbar,.page-modeling>header{background:#fafaf6;border-color:var(--brand-line)}
.page-members .member-brand,.page-cam .brand,.page-modeling .brand{color:var(--brand-ink)}
.page-members :is(.member-brand small,.member-footer,.muted,.helptext,.auth-card ul,.auth-card small){color:var(--brand-muted)}
.page-members :is(.auth-card,.license-card,table,th,td,.file-list li,.member-footer){border-color:var(--brand-line)}
.page-members :is(.kicker,.sub-link){color:var(--brand-olive)}
.page-members :is(.license-card,.message,th,pre){background:var(--brand-soft);color:var(--brand-ink)}
.page-members .member-nav .button{background:var(--brand-ink);color:white;border-color:var(--brand-ink)}
.page-members .button,.page-members button{color:var(--brand-ink);border-color:var(--brand-line)}
.page-members .button.primary,.page-members button.primary{color:white}
.page-cam :is(.workbar,.center-panel){background:var(--brand-paper)}
.page-cam :is(.stock-item.active,.op-row.selected){background:var(--brand-soft);border-color:#a4b392}
.page-cam .op-row.selected:before{background:var(--brand-olive)}
.page-cam :is(.op-icon,.count){background:#eceee4;color:var(--brand-olive)}
.page-cam .dot{border-color:var(--brand-olive)}
.page-cam :is(.add-operation,.workspace-tool-button){background:#fafaf6;color:var(--brand-olive);border-color:var(--brand-line)}
.page-cam :is(.controller,.sidebar-bottom b,.list-label){color:var(--brand-muted)}
.page-modeling :is(.toolbar,.view-header,#measurements,.note){background:#f0f1e9}
.page-modeling .steps{background:var(--brand-soft);border-color:var(--brand-line)}
.page-modeling :is(.feature-row.selected,.sketch-tools .active,.steps button[aria-current="step"]){background:var(--brand-soft);border-color:#95a684;color:var(--brand-olive)}
.page-modeling .steps button b{background:#d6deca}
.page-modeling .steps button[aria-current="step"] b{background:var(--brand-olive);color:white}
.page-modeling .icon-command[aria-pressed="true"],.page-cam .operation-tabs button[aria-selected="true"]{background:var(--brand-soft);color:var(--brand-olive);border-color:#95a684;box-shadow:inset 0 -2px var(--brand-olive)}
.page-modeling .plane-choices .icon-command:not(:disabled):hover,.page-modeling .plane-choices .icon-command:focus-visible{background:#d8edbe;border-color:#789260;color:#36492b;box-shadow:0 0 0 3px #78926033,inset 0 -3px #789260}
.page-modeling footer:not(.error){background:var(--brand-ink)}
.page-modeling :is(.tree p,.note,#step-hint,#sketch-hint,header small){color:var(--brand-muted)}
.page-tools>header{background:#fafaf6;color:var(--brand-ink);border-bottom:1px solid var(--brand-line)}
.page-tools>header a,.page-tools>header .unified-brand{color:var(--brand-olive)}
.page-tools>header small{color:var(--brand-muted)}
.page-tools button:not(.primary){background:#f5f5ef;color:var(--brand-ink)}
.page-tools button:not(.primary):hover{background:var(--brand-soft)}
.page-tools .tool-card.active{background:var(--brand-soft);border-color:#95a684}
.page-tools .calculator{background:var(--brand-soft)}
.page-docs .docs-brand-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px max(24px,calc((100vw - 960px)/2));border-bottom:1px solid var(--brand-line);background:#fafaf6}
.page-docs main{border:1px solid var(--brand-line)}
.page-docs :is(aside,.callout,.note){background:var(--brand-soft);border-color:var(--brand-olive);color:var(--brand-ink)}
.page-docs th{background:var(--brand-soft)}
.page-docs :is(th,td){border-color:var(--brand-line)}
.page-docs :is(code,pre){background:#eeefe7}
.page-landing .brand-icon{width:37px;height:37px}
/* Django admin uses its native theme variables, including accessible dark mode. */
html[data-theme="light"]{--primary:#526747;--secondary:#252923;--accent:#f5f4ef;--primary-fg:#fff;--body-bg:#f5f4ef;--body-fg:#252923;--body-quiet-color:#68715f;--header-bg:#252923;--header-color:#f5f4ef;--link-fg:#526747;--link-selected-fg:#36492b;--button-bg:#526747;--button-hover-bg:#405336;--default-button-bg:#b94b1e;--default-button-hover-bg:#963b16;--breadcrumbs-bg:#526747;--selected-bg:#e8ecdf;--selected-row:#e8ecdf}
#header .unified-brand{color:#f5f4ef}#header .brand-icon{width:36px;height:36px}
@media(max-width:520px){.page-landing .brand-icon{width:32px;height:32px}.page-docs .docs-brand-header{padding:16px;gap:12px}.docs-brand-header .unified-brand{font-size:15px}.docs-brand-header>a:last-child{font-size:12px}.page-tools>header{flex-wrap:wrap}.page-members .member-brand{font-size:18px}}

@media(prefers-color-scheme:light){html[data-theme="auto"]{--primary:#526747;--secondary:#252923;--accent:#f5f4ef;--primary-fg:#fff;--body-bg:#f5f4ef;--body-fg:#252923;--body-quiet-color:#68715f;--header-bg:#252923;--header-color:#f5f4ef;--link-fg:#526747;--link-selected-fg:#36492b;--button-bg:#526747;--button-hover-bg:#405336;--default-button-bg:#b94b1e;--default-button-hover-bg:#963b16;--breadcrumbs-bg:#526747;--selected-bg:#e8ecdf;--selected-row:#e8ecdf}}
html[data-theme="dark"]{--header-bg:#252923;--primary:#879a74;--secondary:#252923;--link-fg:#c0d1af;--button-bg:#526747;--button-hover-bg:#657d56;--default-button-bg:#b94b1e;--default-button-hover-bg:#963b16;--breadcrumbs-bg:#30392b}

@media(prefers-color-scheme:dark){html[data-theme="auto"]{--header-bg:#252923;--primary:#879a74;--secondary:#252923;--link-fg:#c0d1af;--button-bg:#526747;--button-hover-bg:#657d56;--default-button-bg:#b94b1e;--default-button-hover-bg:#963b16;--breadcrumbs-bg:#30392b}}
