/* Sparrofox Color System v1.0 — light-first, WCAG AA, azure blues with fox-orange highlights.
   Source: Sparrofox Color System.pdf. Last stylesheet wins for the static site + free tools. */
:root{
  color-scheme:light;
  /* Brand Blue · Azure — primary */
  --blue-50:#EFF4FE;--blue-100:#DAE6FD;--blue-200:#B6CEFB;--blue-300:#88AEF7;--blue-400:#5585F0;--blue-500:#2E63E6;--blue-600:#1D4FD3;--blue-700:#1A41AC;--blue-800:#1A3A8C;--blue-900:#1B3471;--blue-950:#122046;
  /* Fox Orange — accent/highlights */
  --orange-50:#FFF5ED;--orange-100:#FFE8D4;--orange-200:#FFCEA8;--orange-300:#FFAC70;--orange-400:#FB8138;--orange-500:#F2620F;--orange-600:#DA4F08;--orange-700:#B53D0C;--orange-800:#903311;--orange-900:#762C12;--orange-950:#401204;
  /* Slate Neutrals — cool */
  --slate-0:#FFFFFF;--slate-50:#F7F9FC;--slate-100:#EEF2F7;--slate-200:#E1E7EF;--slate-300:#CBD4E1;--slate-400:#94A2B8;--slate-500:#64748B;--slate-600:#475569;--slate-700:#334155;--slate-800:#1E2A3D;--slate-900:#0F1B2D;--slate-950:#070E1A;
  /* Semantic roles */
  --color-bg:#FFFFFF;--color-surface:#FFFFFF;--color-surface-subtle:var(--slate-50);--color-surface-inset:var(--slate-100);--color-border:var(--slate-200);--color-border-strong:var(--slate-300);
  --color-text:var(--slate-900);--color-text-muted:var(--slate-600);--color-text-subtle:var(--slate-500);--color-text-on-brand:#FFFFFF;
  --color-primary:var(--blue-600);--color-primary-hover:var(--blue-700);--color-primary-active:var(--blue-800);--color-primary-tint:var(--blue-50);
  --color-accent:var(--orange-500);--color-accent-hover:var(--orange-600);--color-accent-text:var(--orange-700);--color-accent-tint:var(--orange-50);
  --color-success:#15803D;--color-success-bg:#F7F6EC;--color-warning:#92610A;--color-warning-bg:#FBF3DD;--color-danger:#C8202F;--color-danger-bg:#FCEBEC;--color-info:var(--blue-700);--color-info-bg:var(--blue-50);--color-focus-ring:rgba(29,79,211,.40);
  /* Sparrofox compatibility aliases */
  --sf-cream:var(--slate-50);--sf-cream-light:#FFFFFF;--sf-parchment:var(--slate-100);--sf-sand:var(--slate-200);--sf-border:var(--slate-200);--sf-border-hover:var(--slate-300);
  --sf-fox:var(--orange-500);--sf-fox-hover:var(--orange-600);--sf-fox-light:var(--orange-400);--sf-fox-glow:rgba(242,98,15,.12);--sf-fox-glow-strong:rgba(242,98,15,.22);
  --sf-brown:var(--slate-900);--sf-brown-light:var(--slate-700);--sf-sage:var(--color-success);--sf-sage-light:#22A052;
  --sf-ink:var(--slate-900);--sf-ink-2:var(--slate-700);--sf-slate:var(--slate-600);--sf-muted:var(--slate-600);--sf-line:var(--slate-200);--sf-paper:#FFFFFF;--sf-wash:var(--slate-50);--sf-soft:var(--blue-50);--sf-blue:var(--blue-600);--sf-cyan:var(--blue-400);--sf-violet:var(--blue-500);--sf-copper:var(--orange-500);
  --sf-bg:var(--color-bg);--sf-bg-card:var(--color-surface);--sf-bg-input:var(--color-surface-inset);--sf-text:var(--color-text);--sf-text-body:var(--slate-700);--sf-text-muted:var(--color-text-muted);--sf-text-light:var(--color-text-subtle);
  --sf-success:var(--color-success);--sf-warning:var(--color-warning);--sf-danger:var(--color-danger);--sf-info:var(--color-info);
  /* legacy app aliases */
  --cream:var(--slate-50);--paper:#FFFFFF;--parchment:var(--slate-100);--fox:var(--orange-500);--fox2:var(--orange-400);--fox-dark:var(--orange-700);--brown:var(--slate-900);--muted:var(--slate-600);--sage:var(--color-success);
  --primary:var(--color-primary);--primary-dark:var(--color-primary-hover);--primary-hover:var(--color-primary-hover);--primary-light:var(--blue-400);--accent:var(--color-accent);--accent-hover:var(--color-accent-hover);--accent-glow:rgba(242,98,15,.12);
  --bg:var(--color-bg);--bg-primary:var(--color-bg);--bg-secondary:var(--color-surface-subtle);--bg-card:var(--color-surface);--bg-card-hover:var(--color-surface-subtle);--bg-input:var(--color-surface-inset);--text:var(--color-text);--text-primary:var(--color-text);--text-secondary:var(--slate-700);--text-muted:var(--color-text-muted);--text-dim:var(--color-text-subtle);--text-light:var(--color-text-subtle);--border:var(--color-border);--border-hover:var(--color-border-strong);--success:var(--color-success);--warning:var(--color-warning);--danger:var(--color-danger);--info:var(--color-info);
}
html,body{background:linear-gradient(180deg,#fff 0%,var(--slate-50) 48%,#fff 100%)!important;color:var(--color-text)!important;}
a{color:var(--color-primary);}a:hover{color:var(--color-primary-hover);}::selection{background:var(--blue-100);color:var(--blue-900);}*:focus-visible{outline:3px solid var(--color-focus-ring)!important;outline-offset:2px!important;}
.fire-text,.sf-gradient-text{background:linear-gradient(135deg,var(--color-primary) 0%,var(--blue-400) 42%,var(--color-accent) 100%)!important;background-size:200% auto!important;-webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important;}
.fire-gradient,.btn-fox,.btn-primary,.primary-btn,.cta-primary,button[type="submit"]{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-hover) 100%)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 16px 34px rgba(29,79,211,.18)!important;}
.btn-fox:hover,.btn-primary:hover,.primary-btn:hover,.cta-primary:hover,button[type="submit"]:hover{background:linear-gradient(135deg,var(--color-primary-hover),var(--color-primary-active))!important;}
.btn-accent,.accent-btn,.secondary-accent{background:linear-gradient(135deg,var(--color-accent),var(--color-accent-hover))!important;color:#fff!important;}
.badge,.tag,.chip,.tool-badge,.saas-tag,.arena-chip,.proj-tag{border-color:var(--blue-100)!important;background:var(--color-primary-tint)!important;color:var(--color-primary-hover)!important;}
.status-live,.live,.new,.free{background:var(--color-accent-tint)!important;color:var(--color-accent-text)!important;}
.card,.tool-card,.saas-card,.pricing-card,.testimonial-card,.arena-item,.feature-card,.result-card{background:var(--color-surface)!important;border-color:var(--color-border)!important;color:var(--color-text)!important;}
input,textarea,select{background:var(--color-surface)!important;border-color:var(--color-border)!important;color:var(--color-text)!important;}input:focus,textarea:focus,select:focus{border-color:var(--color-primary)!important;box-shadow:0 0 0 4px var(--color-focus-ring)!important;}
.text-orange-500,.text-orange-600,.text-amber-600{color:var(--color-accent-text)!important}.bg-orange-500,.bg-amber-500{background-color:var(--color-accent)!important}.border-orange-500,.border-amber-500{border-color:var(--color-accent)!important}
.text-blue-600,.text-sky-600,.text-indigo-600{color:var(--color-primary)!important}.bg-blue-600,.bg-sky-600,.bg-indigo-600{background-color:var(--color-primary)!important}.border-blue-600,.border-sky-600,.border-indigo-600{border-color:var(--color-primary)!important}

/* Global contrast guard: any intentional dark brand panel must carry explicit light text.
   Prevents the light-first theme variables from inheriting dark body/card text onto navy surfaces. */
.band,.dark-band,.dark-panel,.cta-dark,.sf-dark-surface{color:#FFFFFF!important;}
.band h1,.band h2,.band h3,.band h4,.band b,.dark-band h1,.dark-band h2,.dark-band h3,.dark-panel h1,.dark-panel h2,.dark-panel h3,.cta-dark h1,.cta-dark h2,.cta-dark h3,.sf-dark-surface h1,.sf-dark-surface h2,.sf-dark-surface h3{color:#FFFFFF!important;}
.band p,.band li,.band span:not(.chip),.band .sub,.dark-band p,.dark-band li,.dark-panel p,.dark-panel li,.cta-dark p,.cta-dark li,.sf-dark-surface p,.sf-dark-surface li{color:#DDE7F3!important;}
.band .eyebrow,.dark-band .eyebrow,.dark-panel .eyebrow,.cta-dark .eyebrow,.sf-dark-surface .eyebrow{color:var(--color-accent)!important;}
.band .btn-outline,.dark-band .btn-outline,.dark-panel .btn-outline,.cta-dark .btn-outline,.sf-dark-surface .btn-outline{background:#FFFFFF!important;color:var(--color-primary)!important;border-color:rgba(255,255,255,.72)!important;}
.band .card,.dark-band .card,.dark-panel .card,.cta-dark .card,.sf-dark-surface .card{background:#FFFFFF!important;color:var(--color-text)!important;}
.band .card h1,.band .card h2,.band .card h3,.band .card h4,.band .card b,.band .card strong{color:var(--color-text)!important;}
.band .card p,.band .card li,.band .card span{color:var(--color-text-muted)!important;}
.band .product-link,.dark-band .product-link,.dark-panel .product-link{background:rgba(255,255,255,.12)!important;border-color:rgba(255,255,255,.24)!important;color:#FFFFFF!important;}
.band .product-link b,.band .product-link strong{color:#FFFFFF!important;}
.band .product-link span{color:#CFE0F2!important;}

