/* Shared brand primitives. App rules are scoped; never restyle other WP plugins. */
body:not(.wp-admin) { --wp--preset--color--base:var(--brand-bg); --wp--preset--color--surface:var(--brand-surface); --wp--preset--color--contrast:var(--brand-text); --wp--preset--color--muted:var(--brand-muted); --wp--preset--color--accent:var(--brand-accent); --wp--preset--color--accent-2:var(--brand-accent-2); }
.ak-l-hero,.ak-l-demo,.ak-l-block,.ak-l-final { overflow-wrap:anywhere; }
.ak-l-hero :where(a,button),.ak-l-demo :where(a,button) { min-height:44px; }
.ak-l-title { text-wrap:balance; }
.ak-l-eyebrow { color:var(--brand-fire); border-color:var(--brand-fire); }
#ankla-app .ak-app-header { border-bottom:2px solid transparent; border-image:linear-gradient(90deg,var(--brand-accent),var(--brand-accent-2),var(--brand-fire)) 1; }
#ankla-app .ak-auth__card { border-top:3px solid var(--brand-fire); }
.ankla-admin .ankla-design-preview { border-top:3px solid var(--brand-fire); }
.ak-l-cta { flex-wrap:wrap; }
.ak-brand { display:inline-flex; align-items:center; min-height:44px; text-decoration:none; }
.ak-brand img { display:block; width:165px; height:auto; max-width:100%; object-fit:contain; }
:where(#ankla-app,.ankla-admin,.ak-landing) { font-family:var(--brand-font); }
:where(#ankla-app,.ankla-admin,.ak-landing) :where(button,input,select,textarea,a) { -webkit-tap-highlight-color:transparent; }
:where(#ankla-app,.ankla-admin,.ak-landing) :where(button,input,select,textarea) { min-height:44px; max-width:100%; }
:where(#ankla-app,.ankla-admin,.ak-landing) :where(input,textarea,select) { font-size:16px; }
:where(#ankla-app,.ankla-admin,.ak-landing) :focus-visible { outline:3px solid var(--brand-accent); outline-offset:4px; }
:where(#ankla-app,.ankla-admin,.ak-landing) :where(img,video,svg) { max-width:100%; }
#ankla-app .ak-app-header { max-width:1200px; margin-inline:auto; gap:1rem; flex-wrap:nowrap; padding:1rem max(1rem,env(safe-area-inset-left)); }
#ankla-app .ak-app-header a { display:flex; min-height:44px; }
#ankla-app .ak-app-header img { display:block; width:clamp(190px,22vw,218px); height:52px; object-fit:contain; object-position:left center; }
#ankla-app .ak-auth__mark { width:190px; height:auto; margin:0 auto 1.75rem; display:block; }
#ankla-app .ak-auth__glow { animation:none; opacity:.16; }
#ankla-app .ak-view { padding-inline:max(1rem,env(safe-area-inset-left)); }
#ankla-app :where(.ak-panel,.ak-topic,.ak-card,.ak-auth__card,.ak-onb__card) { border-radius:var(--brand-radius); }
#ankla-app :where(h1,h2,h3,p,label,button,a) { overflow-wrap:anywhere; }
#ankla-app :where(.ak-grid,.ak-actions,.ak-quick,.ak-topic__head) > * { min-width:0; }
#ankla-app :where(.ak-card__stem,.ak-card__explanation) { overflow-x:auto; }
#ankla-app sub,#ankla-app sup { line-height:0; position:relative; vertical-align:baseline; }
#ankla-app sup { top:-.45em; } #ankla-app sub { bottom:-.2em; }
#ankla-app .ak-nav { padding-bottom:env(safe-area-inset-bottom); }
#ankla-app .ak-nav button { min-width:0; min-height:52px; }
#ankla-app .ak-tree { display:grid; gap:.75rem; }
#ankla-app .ak-tree details { border:1px solid var(--border); border-radius:14px; background:var(--surface); }
#ankla-app .ak-tree summary { padding:1rem; cursor:pointer; min-height:52px; overflow-wrap:anywhere; font-weight:650; }
#ankla-app .ak-tree summary::marker { color:var(--accent); }
#ankla-app .ak-tree__children { padding:0 .75rem .75rem; display:grid; gap:.65rem; }
#ankla-app .ak-tree__leaf { padding:1rem; border:1px solid var(--border); border-radius:12px; background:var(--surface); }
#ankla-app .ak-tree__leaf h3 { margin:0 0 .5rem; font-size:1rem; }
#ankla-app .ak-tree__meta { color:var(--muted); font-size:.85rem; margin:.5rem 0 .75rem; }
#ankla-app .ak-search { width:100%; margin:0 0 1rem; padding:.75rem 1rem; border:1px solid var(--border); border-radius:12px; background:var(--surface); color:var(--text); }
#ankla-app label[for="ak-deck-search"] { display:block; margin:1rem 0 .5rem; }
.ankla-admin .ankla-design-preview { background:var(--brand-bg); color:var(--brand-text); padding:28px; border-radius:20px; margin-block:24px; }
.ankla-admin .ankla-design-preview img { max-width:100%; height:auto; object-fit:contain; }
.ankla-admin .ankla-design-form { display:grid; gap:12px; max-width:720px; }
.ankla-admin .ankla-design-form label { font-weight:650; }
.ankla-admin > h1::before { background:#E0F2FE url('mark-dark.svg') no-repeat 8px center/20px 20px; padding-left:36px; }
.ankla-admin .ankla-design-form :where(input,select) { width:100%; padding:10px 12px; }
.ankla-admin :where(.widefat,table) { max-width:100%; }
.ankla-admin :where(td,th) { overflow-wrap:anywhere; }
.ankla-admin .ankla-table-scroll { max-width:100%; overflow:auto; }
body.login { background:#fbfaf7; color:var(--brand-ink); font-family:var(--brand-font); }
body.login #login { width:min(400px,calc(100% - 32px)); padding-block:8vh 24px; }
body.login #login h1 a { background-image:url('logo-dark.svg'); background-size:contain; width:272px; height:64px; }
body.login #login form { background:#fff; color:var(--brand-ink); border:1px solid #dbe5f0; border-radius:20px; box-shadow:0 18px 55px rgba(15,23,42,.1); }
body.login #login :where(input[type=text],input[type=password],input[type=email]) { min-height:48px; font-size:16px; border:1px solid #cbd5e1; border-radius:12px; background:#fff; color:var(--brand-ink); }
body.login #login :where(#nav,#backtoblog) a { color:var(--brand-blue, #173b9b); }
@media(min-width:1024px) {
 #ankla-app .ak-view { max-width:1080px; padding-top:2rem; }
 #ankla-app .ak-app-header a { display:none; }
}
@media(max-width:600px) {
 .ak-l-hero,.ak-l-demo,.ak-l-block,.ak-l-final { padding:2.5rem 1rem; }
 .ak-l-cta > a { width:100%; justify-content:center; }
 #ankla-app .ak-app-header > span { display:none; }
 #ankla-app .ak-auth__card { padding:24px 18px; }
 #ankla-app .ak-tree__children { padding-inline:.4rem; }
 .ankla-admin { padding:16px 10px 40px 0; }
 .ankla-admin :where(.form-table th,.form-table td) { display:block; width:auto; padding:8px 0; }
 .ankla-admin :where(.search-box,.tablenav) { float:none; height:auto; }
}
@media(max-height:500px) and (orientation:landscape) {
 #ankla-app .ak-auth { align-items:start; padding-block:16px; }
 #ankla-app .ak-auth__mark { width:130px; margin-bottom:1rem; }
}
@media(prefers-reduced-motion:reduce) {
 :where(#ankla-app,.ankla-admin,.ak-landing) *, :where(#ankla-app,.ankla-admin,.ak-landing) *::before,:where(#ankla-app,.ankla-admin,.ak-landing) *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}
