/* OSCANRE VISUAL SYSTEM 2.0 — restrained cohesion layer.
   Shared decisions: Inter, warm neutrals, 12px controls, 20px cards, consistent focus.
   Public content, chat functionality, subscriptions and native flow positioning remain unchanged. */
:root{
  --osc2-font:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --osc2-canvas:#f3efe7;
  --osc2-paper:#fbfaf7;
  --osc2-surface:#ffffff;
  --osc2-ink:#171513;
  --osc2-muted:#716b64;
  --osc2-border:#ded6cb;
  --osc2-radius-control:12px;
  --osc2-radius-card:20px;
  --osc2-focus:#9f8268;
  --osc2-shadow:0 14px 40px rgba(32,25,19,.055);
  --osc2-space-1:4px;
  --osc2-space-2:8px;
  --osc2-space-3:12px;
  --osc2-space-4:16px;
  --osc2-space-5:20px;
  --osc2-space-6:24px;
  --osc2-space-8:32px;
  --osc2-space-12:48px;
  --osc2-space-16:64px;
}
:where(body.ux131a-public,body.ux131b-sales,body.book-page,body.booking-v2-page,body.auth-body,body.workspace-app){
  font-family:var(--osc2-font);
  font-synthesis:none;
  text-rendering:optimizeLegibility;
}
:where(body.ux131a-public,body.ux131b-sales,body.booking-v2-page){
  --paper:var(--osc2-canvas);
  --paper-2:#ebe5dc;
  --line-light:rgba(28,24,20,.135);
}
:where(body.analysis-page,body.booking-v2-page,body.shop-page,body.ebook-library-page,body.program-page,body.club-landing-page,body.conversations-page){
  background-color:var(--osc2-canvas);
}
:where(body.ux131a-public,body.ux131b-sales,body.book-page) :is(.eyebrow,.section-eyebrow,.kicker){
  letter-spacing:.135em;
  font-weight:750;
}
:where(body.ux131a-public,body.ux131b-sales,body.book-page) h2,
:where(body.workspace-app) h2{
  letter-spacing:-.04em;
  text-wrap:balance;
}
:where(body.ux131a-public,body.ux131b-sales,body.book-page,body.booking-v2-page,body.workspace-app,body.auth-body) .btn{
  border-radius:var(--osc2-radius-control)!important;
  letter-spacing:-.012em;
  font-weight:700;
  transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,opacity .18s ease;
}
:where(body.ux131a-public,body.ux131b-sales,body.book-page,body.booking-v2-page) :is(.faq-button,.library-filter,.shop-add){
  border-radius:var(--osc2-radius-control)!important;
}
:where(body.ux131a-public,body.ux131b-sales,body.book-page,body.booking-v2-page) :is(
  .review-card,.ebook-library-card,.shop-card,.home-focus-card,
  .booking-offer-card,.booking-form-card,.program-fit-card,.club-price-card
){
  border-radius:var(--osc2-radius-card)!important;
}
:where(body.ux131a-public,body.ux131b-sales,body.book-page,body.booking-v2-page) :is(
  .review-card,.ebook-library-card,.shop-card,.booking-offer-card,.booking-form-card
){
  border-color:var(--osc2-border);
}
:where(body.ux131a-public,body.ux131b-sales,body.book-page,body.booking-v2-page) :is(
  .analysis-result,.analysis-next,.slot-status,.faq-item
){
  border-radius:16px;
}
:where(body.ux131a-public,body.ux131b-sales,body.book-page,body.booking-v2-page,body.workspace-app,body.auth-body)
:is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select,textarea){
  border-radius:var(--osc2-radius-control);
}
:where(body.ux131a-public,body.ux131b-sales,body.book-page,body.booking-v2-page,body.workspace-app,body.auth-body)
:is(button,input,textarea,select,a):focus-visible{
  outline:2px solid var(--osc2-focus);
  outline-offset:3px;
}
/* Higher-specificity overrides for legacy homepage and conversation CTA declarations. */
body.home-page.ux131d-polish .btn,
body.analysis-page.ux131a-public .btn,
body.conversations-page.ux131a-public .btn{
  border-radius:var(--osc2-radius-control)!important;
}
body:has(.oscanre-ai-home) .oscanre-ai-home__cta{
  border-radius:var(--osc2-radius-control)!important;
}
/* Auth and customer application share the same, restrained control language. */
body.auth-body :is(.auth-card,.account-login-card){
  border-radius:var(--osc2-radius-card);
}
body.workspace-app :is(.customer-card,.workspace-card,.ups-card,.account-documents-card){
  border-radius:var(--osc2-radius-card);
}
body.workspace-app :is(.workspace-nav-item,.customer-page-primary-action,.account-back-link){
  border-radius:var(--osc2-radius-control);
}
body.workspace-app :is(.notice,.empty-state,.status-notice){
  border-radius:14px;
}
body.workspace-app :is(.customer-card,.workspace-card){
  border-color:var(--osc2-border);
}
/* Oscanre AI retains its individual calm landing, but uses the same fonts and surfaces. */
body:has(.oscanre-ai-home){
  --bg:var(--osc2-canvas);
  --bg-2:#ebe5dc;
  --surface-soft:var(--osc2-paper);
  --border:var(--osc2-border);
  --sans:var(--osc2-font);
}
body:has(.oscanre-ai-home) :is(.oscanre-ai-home__cta,.checkout-btn,.modal-primary){
  border-radius:var(--osc2-radius-control);
  letter-spacing:-.01em;
}
body:has(.oscanre-ai-home) :is(.oscanre-ai-home__portrait,.chat-card,.help-widget){
  border-radius:var(--osc2-radius-card);
}
body:has(.oscanre-ai-home) :is(button,a,input,textarea,select):focus-visible{
  outline:2px solid var(--osc2-focus);
  outline-offset:3px;
}
@media(max-width:700px){
  :where(body.ux131a-public,body.ux131b-sales,body.book-page) :is(.eyebrow,.section-eyebrow,.kicker){
    letter-spacing:.12em;
  }
}
/* Align the last legacy checkout and account/login variants. */
body.mn-page .btn,
body.auth-body .btn{
  border-radius:var(--osc2-radius-control)!important;
}
body.auth-body .auth-card{
  border-radius:var(--osc2-radius-card)!important;
}
body.legal-page .legal-shell :is(p,li){line-height:1.68}
body.legal-page .legal-shell h2{letter-spacing:-.035em;text-wrap:balance}
@media(prefers-reduced-motion:reduce){
  :where(body.ux131a-public,body.ux131b-sales,body.book-page,body.booking-v2-page,body.workspace-app,body.auth-body) .btn{
    transition:none;
  }
}
