/* SayLessAI shared identity, 2026-09-13.
   Last in each shell so standalone landing, public pages and signed-in views
   share one palette. Legacy token names remain compatible with mature screens. */
@font-face{font-family:'Archivo';src:url('/static/fonts/Archivo-Bold.ttf') format('truetype');font-weight:700 900;font-style:normal;font-display:swap}
@font-face{font-family:'Instrument Sans';src:url('/static/fonts/InstrumentSans-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{
  --sl-black:#050807;--sl-surface:#0C1210;--sl-raised:#141E19;
  --sl-emerald:#03CB8A;--sl-emerald-hover:#23DDA0;--sl-white:#F5F8F6;
  --sl-muted:#A3B4AB;--sl-line:rgba(163,180,171,.16);
  --prism-bg:var(--sl-black);--prism-surface:var(--sl-surface);--prism-surface-2:var(--sl-raised);
  --prism-surface-offset:#1A2820;--prism-accent:var(--sl-emerald);--prism-accent-hover:var(--sl-emerald-hover);
  --prism-accent-text:#53DDB0;--prism-border-focus:rgba(3,203,138,.4);
  --cr-stage-black:var(--sl-black);--cr-edit-surface:var(--sl-surface);--cr-edit-raised:var(--sl-raised);
  --cr-canvas-white:var(--sl-white);--cr-coral:var(--sl-emerald);--cr-coral-hover:var(--sl-emerald-hover);
  --cr-teal:#53DDB0;--cr-text-dim:#C5D0CA;--cr-text-muted:var(--sl-muted);--cr-text-faint:#7E9387;
  --cr-line:var(--sl-line);--cr-line-strong:rgba(163,180,171,.26);
  --cr-coral-line:rgba(3,203,138,.35);--cr-teal-line:rgba(83,221,176,.35);
  --cr-porcelain:var(--sl-emerald);--cr-porcelain-hover:var(--sl-emerald-hover);--cr-porcelain-ink:#04140D;
  --stage:var(--sl-black);--stage-2:#080D0A;--surface:var(--sl-surface);--raised:var(--sl-raised);
  --ink:var(--sl-white);--dim:#C5D0CA;--muted:var(--sl-muted);--faint:#7E9387;
  --coral:var(--sl-emerald);--coral-hot:var(--sl-emerald-hover);--teal:#53DDB0;
  --font-body:'Instrument Sans',system-ui,sans-serif;--font-display:'Archivo',system-ui,sans-serif;
}
html[data-theme="dark"],html:not([data-theme]){
  --bg-base:var(--sl-black);--bg-surface:var(--sl-surface);--bg-elevated:var(--sl-raised);
  --bg-hover:#1A2820;--bg-active:#21372B;--text-primary:var(--sl-white);--text-secondary:#C5D0CA;
  --text-muted:var(--sl-muted);--text-faint:#7E9387;--border:var(--sl-line);--border-strong:rgba(163,180,171,.26);
  --accent:var(--sl-emerald);--accent-hover:var(--sl-emerald-hover);--accent-lift:#53DDB0;--accent-deep:#009967;
  --accent-glow:rgba(3,203,138,.08);--accent-dim:rgba(3,203,138,.08);--accent-border:rgba(3,203,138,.3);
  --accent-shadow:rgba(3,203,138,.15);
  --porcelain:var(--sl-emerald);--porcelain-hover:var(--sl-emerald-hover);--porcelain-hot:var(--sl-emerald-hover);--porcelain-ink:#04140D;
  --porcelain-depth:inset 0 1px 0 rgba(255,255,255,.15),0 4px 16px rgba(0,0,0,.22);
  --porcelain-depth-hover:inset 0 1px 0 rgba(255,255,255,.2),0 6px 20px rgba(0,0,0,.3);
  --cr-shadow-porcelain:var(--porcelain-depth);
  color-scheme:dark;
}
html[data-theme="light"]{
  --bg-base:#F3F7F4;--bg-surface:#FFFFFF;--bg-elevated:#EAF1EC;--bg-hover:#E0EBE4;--bg-active:#D6E5DC;
  --text-primary:#102419;--text-secondary:#365443;--text-muted:#4B6656;--text-faint:#526F5D;
  --accent:#007A52;--accent-hover:#006644;--accent-dim:rgba(0,122,82,.08);--accent-border:rgba(0,122,82,.3);
  --porcelain:#006644;--porcelain-hover:#005238;--porcelain-ink:#FFFFFF;
  color-scheme:light;
}
body{font-family:var(--font-body)}
.sl-brand-lockup{display:block;object-fit:contain;object-position:left center;width:180px;height:40px;flex-shrink:0}
.sl-brand-mark{display:block;object-fit:contain;flex-shrink:0}
.sl-brand-ai{color:var(--sl-emerald)}
.sidebar-wordmark{font-family:'Archivo',system-ui,sans-serif;font-size:23px;letter-spacing:-.04em;white-space:nowrap}
html[data-theme="light"] .sl-brand-mark{background:#050807;border-radius:7px;padding:4px}
html[data-theme="light"] .sl-brand-ai{color:#007A52}
.sidebar{background:var(--bg-surface);border-right:1px solid var(--border)}
.sidebar-logo{gap:12px}
.cr-nav,.top{background:rgba(5,8,7,.93);border-bottom-color:var(--sl-line)}
.cr-panel,.cr-frame{border-color:var(--sl-line);box-shadow:0 8px 32px -24px rgba(0,0,0,.8)}
.cr-btn--primary::before,.btn-primary::before,.btn--primary::before{background:currentColor;opacity:.38}
.cr-public a:focus-visible,.landing-studio a:focus-visible,button:focus-visible{outline:2px solid var(--sl-emerald);outline-offset:4px}
::selection{background:rgba(3,203,138,.25);color:inherit}
/* The lockup needs less width on a phone so language and sign-in stay visible. */
@media(max-width:600px){
 .sl-brand-lockup{width:144px;height:34px}
 .top__in,.cr-nav{gap:12px}
 .sidebar-wordmark{font-size:22px}
}
@media(max-width:380px){.sl-brand-lockup{width:126px;height:32px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Give existing subscribers a visible sign-in on the smallest public header. */
.landing-studio .top{background:rgba(5,8,7,.94)}
@media(max-width:640px){
 .landing-studio .top__in{display:grid;grid-template-columns:1fr;padding:14px 16px;gap:10px}
 .landing-studio .top__right{display:flex;justify-content:space-between;width:100%;gap:12px}
 .landing-studio .top .signin{display:inline-flex;align-items:center;justify-content:center;min-height:44px;white-space:nowrap;color:var(--ink)}
 .landing-studio .top .btn{min-height:44px;white-space:nowrap}
 .landing-studio .top__links{display:none}
 .landing-studio .top__right .language-picker{margin-right:auto}
}

@media(max-width:640px){
 .landing-studio .hero .btn--go::before,.landing-studio .hero .btn--go::after{content:none}
 .landing-studio .hero .btn{white-space:nowrap}
}
