/* ===================== Sozheim+ — style.css (clean) ===================== */

/* ===================== BACKEND OFFLINE BANNER ===================== */
.backend-offline-banner {
  background-color: #dc2626;
  color: white;
  padding: 12px 16px;
  margin: 0 0 16px 0;
  border-radius: var(--radius, 12px);
  font-size: 14px;
  font-weight: 500;
  text-align: center;
  display: none;
  box-shadow: 0 2px 8px rgba(220, 38, 38, 0.2);
}

.backend-offline-banner[hidden] {
  display: none !important;
}

/* ===================== DESKTOP CHAT CONTAINER ===================== */
/* Responsive container - fixed bubble in bottom-right on desktop, drawer on mobile */
#desktop-chat-container {
  position: fixed !important;
  bottom: 20px !important;
  right: 20px !important;
  top: auto !important;
  left: auto !important;
  width: 380px !important;
  height: 600px !important;
  max-width: 380px !important;
  max-height: 80vh !important; /* Responsive max-height for smaller screens */
  min-width: 320px !important; /* Minimum width for very small screens */
  min-height: 400px !important; /* Minimum height for usability */
  z-index: 999999 !important;
  display: none; /* Hidden by default, shown via JavaScript */
  pointer-events: none; /* Allow clicks to pass through when hidden */
  box-sizing: border-box;
  margin: 0 !important; /* Ensure no margin conflicts */
  /* Auto-resize: container will adjust on window resize */
}

/* When container is shown via JavaScript */
#desktop-chat-container[style*="display: block"] {
  display: block !important;
  pointer-events: auto !important; /* Enable clicks when visible */
}

/* CRITICAL CSS RESET: Force chat to stay within hardcoded container */
#chat-wrapper, .chat-wrapper, .bp-chat-box {
  height: 100% !important;
  width: 100% !important;
  position: relative !important;
  inset: auto !important;
}

/* ---------- Tokens ---------- */
:root{
  --brand:#0A58CA; /* блакитніше, сучасніше */
  --main-brand-blue:#0A58CA; /* Exact brand blue for unified color scheme */
  --main-brand-blue-dark:#0848A8; /* Darker version for hover/active states */
  --accent:#f1c40f;     /* жовтий "+" */
  /* Warm gold for hero “24” on white — same hue family as logo +, readable contrast */
  --accent-247:#c89408;
  --danger:#dc2626;
  --text:#111827;
  --muted:#6b7280;
  --bg:#f7f8fa;
  --radius:18px;
  --button-radius:12px; /* Consistent border-radius for all primary buttons */
  
  /* Unified header background - standard across all pages (fixed colors, not dependent on --brand) */
  --header-bg: linear-gradient(180deg, #1E78DC 0%, #0A58CA 100%);

   /* запас місця під fixed чат-кнопку + safe-area (iPhone) - DISABLED to isolate chat */
  --chat-safe-space: 0px;
}

/* Links: brand blue instead of the browser default (#0000EE); visited stays the same colour.
   Literal on purpose: crisis.html re-declares --brand as #1f3a93 inside .emg.
   Element-level specificity only — every existing class/id rule for links keeps winning. */
a { color: #0A58CA; }
a:visited { color: #0A58CA; }

/* ---------- Base ---------- */
*{ box-sizing:border-box; }

/* Native smooth scrolling - slower, premium feel */
html {
  scroll-behavior: smooth;
  scroll-padding-top: 20px; /* Ensure scrolling to elements doesn't stick to top edge */
  -webkit-overflow-scrolling: touch; /* Smooth momentum scrolling on iOS */
  overflow-x: hidden; /* Prevent side-to-side wobbling while scrolling */
}

html,body{
  margin:0;
  padding:0;
  background:var(--bg);
  color:var(--text);
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  /* Emergency Reset: Allow main page to scroll */
  overflow:auto !important;
  overflow-x: hidden; /* Prevent side-to-side wobbling while scrolling */
  height:auto !important;
  /* Chat is independent - no padding needed */
  /* Hardware acceleration for smooth scrolling */
  -webkit-overflow-scrolling: touch; /* Smooth momentum scrolling on iOS - ONLY on html/body */
  will-change: scroll-position; /* Hint to browser for GPU optimization */
  backface-visibility: hidden; /* Prevent flickering during scroll */
}

/* Visual comfort - anti-jitter text rendering */
body {
  text-rendering: optimizeLegibility; /* Makes text look stable while moving */
  -webkit-font-smoothing: antialiased; /* Crisp text rendering during scroll */
  -moz-osx-font-smoothing: grayscale; /* Firefox text smoothing */
}
/* Global muted text (one source of truth) */
.muted { color: var(--muted); }

/* ---------- Header ---------- */
/* Unified header - synchronized with chat widget color */
/* Global sticky glassmorphism header for all pages */
.app-header{
  position:sticky !important;
  top:0 !important;
  z-index:1000 !important;
  /* Glassmorphism effect - modern, native mobile feel */
  backdrop-filter: blur(10px) saturate(180%);
  -webkit-backdrop-filter: blur(10px) saturate(180%);
  background: rgba(30, 120, 220, 0.85) !important; /* Semi-transparent blue */
  background-image: linear-gradient(135deg, rgba(30, 120, 220, 0.9) 0%, rgba(10, 88, 202, 0.9) 100%) !important;
  color:#fff;
  /* Shared premium header rhythm across public/mobile pages */
  height:60px;
  min-height:60px;
  padding: 0 14px;
  padding-top: env(safe-area-inset-top, 0); /* Safe area for mobile notch */
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 8px;
  border-bottom-left-radius: 18px;
  border-bottom-right-radius: 18px;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.17),
    0 3px 12px rgba(6, 24, 58, 0.15);
  border-bottom: 1px solid rgba(238, 247, 255, 0.22);
  transition: box-shadow 0.3s ease, background 0.3s ease;
}

/* Enhanced shadow when page is scrolled */
body.scrolled .app-header {
  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.2);
  background: rgba(30, 120, 220, 0.95) !important;
  background-image: linear-gradient(135deg, rgba(30, 120, 220, 0.95) 0%, rgba(10, 88, 202, 0.95) 100%) !important;
}

/* Letter page needs higher z-index for overlays */
.letter-page .app-header {
  z-index: 10001 !important; /* Above loading overlay */
}

/* Back button - appears on internal pages */
.header-back-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  padding: 0;
  margin: 0;
  background: rgba(255, 255, 255, 0.07);
  border: 1px solid rgba(223, 235, 255, 0.26);
  color: rgba(246, 250, 255, 0.9);
  cursor: pointer;
  border-radius: 999px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14);
  transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
  flex-shrink: 0;
  /* Integrated with logo - gap handled by parent flexbox */
}

.header-back-btn:hover {
  background-color: rgba(255, 255, 255, 0.11);
  border-color: rgba(236, 245, 255, 0.4);
  opacity: 1;
}

.header-back-btn:active {
  transform: scale(0.95);
}

.header-back-btn svg {
  width: 20px;
  height: 20px;
  stroke: currentColor;
  stroke-width: 2.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Hide back button on home page */
.home-page-body .header-back-btn {
  display: none;
}

/* Unified brand logo - consistent across all pages */
.brand{
  font-weight:680;
  font-size:22.2px;
  color:#ffffff; /* Pure white - clean look matching chat icon */
  text-decoration:none;
  font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
  letter-spacing: -0.029em;
  display: inline-block; /* Simple inline block for text */
  margin: 0; /* Reset any default margins */
  padding: 0; /* Reset any default padding */
  flex-shrink: 0;
  /* Perfect vertical alignment with arrow */
  line-height: 1;
  text-shadow: 0 1px 1px rgba(7, 18, 44, 0.11);
  margin-right: auto;
}

.brand-plus{
  color:var(--accent);
  margin-left: 0.02em;
  font-weight: 730;
  letter-spacing: -0.005em;
}

/* доступність: видимий фокус */
.brand:focus-visible{
  outline:2px solid #fff;
  outline-offset:3px;
  border-radius:6px;
}

/* ---------- Language picker ---------- */
/* Unified language switcher - consistent across all pages, right-aligned */
.lang,
.lang-switcher {
  position: relative;
  flex-shrink: 0;
  margin-left: auto; /* Push to the right */
}

/* Language trigger (button only): lighter premium pill with subtle chevron */
#lang-btn.lang-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-width: 52px;
  height: 32px;
  padding: 0 10px 0 11px;
  border-radius: 999px;
  border: 1px solid rgba(223, 235, 255, 0.42);
  background: rgba(255, 255, 255, 0.11);
  color: #f7fbff;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1;
  cursor: pointer;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.22),
    0 1px 2px rgba(8, 22, 52, 0.12);
  transition: background-color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}
#lang-btn.lang-btn::after{
  content: "";
  width: 5px;
  height: 5px;
  margin-top: -1px;
  border-right: 1.4px solid rgba(247, 251, 255, 0.84);
  border-bottom: 1.4px solid rgba(247, 251, 255, 0.84);
  transform: rotate(45deg);
  transition: transform 0.18s ease, opacity 0.18s ease;
  opacity: 0.84;
}
#lang-btn.lang-btn[aria-expanded="true"]::after{
  transform: rotate(225deg) translateY(-1px);
}
#lang-btn.lang-btn:hover{
  background: rgba(255, 255, 255, 0.15);
  border-color: rgba(234, 243, 255, 0.56);
}
#lang-btn.lang-btn:focus-visible{
  outline: none;
  border-color: rgba(245, 250, 255, 0.72);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.28),
    0 0 0 2px rgba(10, 88, 202, 0.16),
    0 1px 3px rgba(8, 22, 52, 0.14);
}
.lang-btn--right{
  margin-left:auto;
}

/* Language dropdown: curated mineral panel anchored to trigger */
#lang-list.lang-list{
  position:absolute;
  right:0;
  top: calc(100% + 5px);
  background: #f7f8f6;
  color: #253243;
  border: 1px solid #d9dee5;
  border-radius: 19px;
  box-shadow:
    0 8px 18px rgba(15, 23, 42, 0.085),
    0 1px 3px rgba(15, 23, 42, 0.04);
  padding: 24px 6px 8px;
  list-style:none;
  margin:0;
  min-width: 176px;
  z-index:3000;
}
#lang-list.lang-list::before{
  content: "Sprache";
  position: absolute;
  top: 8px;
  left: 13px;
  font-size: 10.5px;
  font-weight: 600;
  letter-spacing: 0.045em;
  text-transform: uppercase;
  color: #788293;
  pointer-events: none;
}

/* ЄДИНЕ правило для hidden */
.lang-list[hidden]{ display:none !important; }

#lang-list.lang-list li{
  position: relative;
  min-height: 40px;
  display: flex;
  align-items: center;
  padding: 9px 32px 9px 13px;
  border-radius: 12px;
  color: #2f3a49;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: -0.005em;
  cursor: pointer;
  transition: background-color 0.16s ease, color 0.16s ease;
}
#lang-list.lang-list li:hover,
#lang-list.lang-list li:focus-visible{
  background: #f1f3f2;
  color: #253345;
  outline: none;
}
#lang-list.lang-list li[aria-selected="true"]{
  background: #f2f4f3;
  color: #223245;
  font-weight: 590;
}
#lang-list.lang-list li[aria-selected="true"]::after{
  content: "";
  position: absolute;
  right: 13px;
  top: 50%;
  width: 9px;
  height: 5px;
  border-left: 1.5px solid #7a8596;
  border-bottom: 1.5px solid #7a8596;
  transform: translateY(-62%) rotate(-45deg);
}


/* ---------- Layout ---------- */
.container{
  max-width:820px;
  margin:0 auto;
  padding:18px;
}

/* ===================== Page titles (global) ===================== */
.page-title{
  margin: 10px 0 18px;
  font-size: clamp(30px, 5.5vw, 40px);
  line-height: 1.08;
  font-weight: 600;
  letter-spacing: -0.02em;
}

/* ---------- Home landing: hero nav action rows (scoped to .home-nav only) ---------- */
.home-nav .big-btn{
  display: flex;
  align-items: center;
  gap: 11px;
  width: 100%;
  padding: 19px 17px 19px 15px;
  margin: 16px 0;
  border: none;
  text-decoration: none;
  color: #0f172a;
  font-weight: 600;
  font-size: clamp(15px, 3.65vw, 16.75px);
  line-height: 1.27;
  letter-spacing: -0.021em;
  white-space: normal;
  word-wrap: break-word;
  overflow-wrap: break-word;
  contain: layout style paint;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
  transition:
    box-shadow 0.15s ease,
    background-color 0.15s ease,
    border-color 0.15s ease;
}

.home-nav .big-btn__label{
  flex: 1;
  min-width: 0;
  text-align: start;
  font-weight: 600;
  color: inherit;
  letter-spacing: -0.021em;
}

/* Home landing: action cards — white surface, color-coded left accent border */
body.home-page-body .home-nav .big-btn.home-action-card{
  --card-accent: #0a58ca; /* default; overridden per card type below */
  position: relative;
  padding: 16px 44px 16px 15px; /* right gap reserves space for › arrow */
  gap: 11px;
  margin: 0;
  contain: none !important;
  background: #ffffff;
  border: none;
  border-left: 4px solid var(--card-accent);
  box-shadow:
    0 2px 10px rgba(0,0,0,0.055),
    0 0 0 1px rgba(0,0,0,0.042);
  overflow: hidden;
  transition:
    transform 0.15s ease,
    box-shadow 0.18s ease;
}

/* Subtle accent wash behind content */
body.home-page-body .home-nav .big-btn.home-action-card::before{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    110deg,
    color-mix(in srgb, var(--card-accent) 7%, transparent) 0%,
    transparent 55%
  );
  pointer-events: none;
}

/* Navigation arrow */
body.home-page-body .home-nav .big-btn.home-action-card::after{
  content: "›";
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 1.6rem;
  line-height: 1;
  color: var(--card-accent);
  opacity: 0.32;
  transition: opacity 0.18s ease, transform 0.18s ease;
  pointer-events: none;
}

/* Icon wrapper — rounded square matching accent */
body.home-page-body .home-nav .home-action-card .big-btn-icon-wrap{
  flex-shrink: 0;
  width: 48px;
  min-width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  margin: 0;
  border: none;
  background: color-mix(in srgb, var(--card-accent) 12%, #fff);
  box-shadow: 0 0 0 1.5px color-mix(in srgb, var(--card-accent) 22%, transparent);
}

/* Icon — accent color */
body.home-page-body .home-nav .home-action-card .big-btn-icon{
  width: 22px;
  height: 22px;
  stroke-width: 1.65px;
  color: var(--card-accent);
  opacity: 1;
  transition: color 0.18s ease;
}

/* Text group — label + sublabel stacked */
body.home-page-body .home-nav .home-action-card .big-btn__text-group{
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
  text-align: start;
}

/* Primary label */
body.home-page-body .home-nav .big-btn.home-action-card .big-btn__label{
  color: #1e293b;
  font-weight: 610;
  letter-spacing: -0.018em;
  line-height: 1.28;
  font-size: clamp(15.7px, 3.7vw, 16.6px);
}

/* Secondary sublabel */
body.home-page-body .home-nav .home-action-card .big-btn__sublabel{
  color: var(--muted);
  font-size: clamp(12.5px, 3vw, 13.5px);
  font-weight: 420;
  line-height: 1.35;
  letter-spacing: -0.01em;
}

/* Per-card accent colors */
body.home-page-body .home-nav .big-btn.home-action-card--primary{
  --card-accent: #0a58ca;
}
body.home-page-body .home-nav .big-btn.home-action-card--calm{
  --card-accent: #059669;
}
body.home-page-body .home-nav .big-btn.home-action-card--emergency{
  --card-accent: #dc2626;
}

/* Hover */
body.home-page-body .home-nav .big-btn.home-action-card:hover{
  transform: translateY(-2px);
  box-shadow:
    0 6px 20px rgba(0,0,0,0.09),
    0 0 0 1px rgba(0,0,0,0.05);
}
body.home-page-body .home-nav .big-btn.home-action-card:hover::after{
  opacity: 0.7;
  transform: translateY(-50%) translateX(4px);
}

/* Active / press */
body.home-page-body .home-nav .big-btn.home-action-card:active{
  transform: translateY(0);
  box-shadow:
    0 1px 6px rgba(0,0,0,0.06),
    0 0 0 1px rgba(0,0,0,0.04);
}

/* Focus ring uses accent color */
body.home-page-body .home-nav .big-btn.home-action-card:focus-visible{
  outline: 2px solid var(--card-accent);
  outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce){
  body.home-page-body .home-nav .home-action-card,
  body.home-page-body .home-nav .home-action-card .big-btn-icon{
    transition-duration: 0.01ms !important;
  }
}

@media (max-width: 480px){
  body.home-page-body .home-nav .big-btn.home-action-card{
    padding: 15px 42px 15px 14px;
    gap: 10px;
  }
  body.home-page-body .home-nav .home-action-card .big-btn-icon-wrap{
    width: 44px;
    min-width: 44px;
    height: 44px;
  }
  body.home-page-body .home-nav .home-action-card .big-btn-icon{
    width: 21px;
    height: 21px;
  }
}

/* Home: hard stack widths — phone full-bleed + 16px gutters; tablet/desktop fixed px caps */
.home-hero-stack{
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 12px;
  box-sizing: border-box;
  flex-shrink: 0;
  /* Phone (<768): edge-to-edge shell, inner rail = 100vw − 32px via padding */
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding-left: 16px;
  padding-right: 16px;
}

@media (min-width: 768px){
  .home-hero-stack{
    width: 100%;
    max-width: min(100%, 560px);
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
  }
}

@media (min-width: 1024px){
  .home-hero-stack{
    width: 100%;
    max-width: min(100%, 540px);
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
  }
}

/* Hero — headline + 24/7 read as one intro unit */
.hero-section{
  width: 100%;
  margin: 0;
  padding: 0 2px;
  text-align: center;
}

.hero-section__cluster{
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  width: 100%;
}

.hero-title{
  font-size: clamp(1.22rem, 3.6vw, 1.48rem);
  font-weight: 700;
  line-height: 1.18;
  letter-spacing: -0.03em;
  color: var(--brand);
  margin: 0;
  font-family: 'Inter', 'SF Pro Display', -apple-system, 'Segoe UI', system-ui, Roboto, Arial, sans-serif;
  font-style: italic;
}

/* 24/7 base type (home page applies composed chip treatment) */
.hero-247{
  display: inline-flex;
  align-items: baseline;
  justify-content: center;
  margin: 0;
  padding: 0;
  font-family: 'Inter', 'SF Pro Display', -apple-system, 'Segoe UI', system-ui, Roboto, Arial, sans-serif;
  font-variant-numeric: tabular-nums;
  line-height: 1;
}

.hero-247__dim{
  font-size: clamp(1.05rem, 3.8vw, 1.2rem);
  font-weight: 700;
  color: #334155;
  letter-spacing: -0.02em;
}

.hero-247__slash{
  font-size: clamp(1.05rem, 3.8vw, 1.2rem);
  font-weight: 600;
  color: #64748b;
  margin: 0 0.06em;
  letter-spacing: -0.02em;
}

.hero-247__accent{
  font-size: clamp(1.35rem, 5.2vw, 1.65rem);
  font-weight: 800;
  color: var(--accent-247);
  letter-spacing: -0.04em;
}

/* Home landing hero only: composed identity (headline + availability signal)
   (padding lives with other body.home-page-body .hero rules — see below) */
body.home-page-body .home-hero__cluster.hero-section__cluster{
  gap: clamp(7px, 2.2vw, 11px);
  max-width: 21.2rem;
  margin-inline: auto;
}

body.home-page-body .home-hero .hero-title{
  font-style: italic;
  font-size: clamp(1.38rem, 4.2vw, 1.68rem);
  font-weight: 490;
  line-height: 1.16;
  letter-spacing: -0.022em;
  text-wrap: balance;
  color: var(--brand);
}

body.home-page-body .home-hero .hero-247.home-hero__availability{
  display: inline-flex;
  align-items: baseline;
  justify-content: center;
  margin: 1px 0 0;
  padding: 0;
  border: 0;
  background: none;
  box-shadow: none;
  opacity: 1;
  font-variant-numeric: tabular-nums;
  font-style: italic;
}

body.home-page-body .home-hero .hero-247__dim{
  font-size: clamp(1.32rem, 5.10vw, 1.52rem);
  font-weight: 490;
  color: var(--brand);
  letter-spacing: -0.024em;
  line-height: 1;
}

body.home-page-body .home-hero .hero-247__slash{
  font-size: clamp(1.18rem, 4.45vw, 1.34rem);
  font-weight: 340;
  color: #96a6bb;
  margin: 0 0.05em;
  letter-spacing: -0.008em;
  line-height: 1;
}

body.home-page-body .home-hero .hero-247__accent{
  font-size: clamp(1.56rem, 5.95vw, 1.84rem);
  font-weight: 400;
  color: #d3862a;
  letter-spacing: -0.03em;
  line-height: 0.97;
}

/* Instructions Section */
.instructions-section{
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin: 48px 0 32px;
  padding: 0 20px;
}

.instruction-item{
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px 20px;
  background: rgba(255, 255, 255, 0.6);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.5);
}

.instruction-icon{
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(10, 88, 202, 0.1);
  border-radius: 12px;
  flex-shrink: 0;
  color: var(--brand);
}

.instruction-icon svg{
  width: 24px;
  height: 24px;
  stroke-width: 2;
}

.instruction-text{
  font-size: 16px;
  font-weight: 500;
  color: var(--text);
  line-height: 1.4;
}

/* Fade-in Animation */
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.fade-in{
  animation: fadeIn 0.6s ease-out forwards;
  opacity: 0;
}

@keyframes homeFadeIn {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 480px){
  .home-hero-stack{
    gap: 14px;
  }
  .hero-section__cluster{
    gap: 0.4rem;
  }
  body.home-page-body .home-hero-stack{
    gap: 14px !important;
  }
  body.home-page-body .home-nav{
    gap: 10px !important;
  }
}

@media (min-width: 600px){
  body.home-page-body .home-nav{
    gap: 12px !important;
  }
}

/* ===================== CHAT (Sozheim+) ===================== */

/* Floating organic bubble button */
.bp-chat-fab{
  position:fixed;
  right:20px;
  bottom:20px;
  z-index:1000000; /* Always above chat container (999999) and all other elements */
  transition: opacity 0.2s ease, transform 0.2s ease;

  border:none;
  /* Organic blob shape - smooth, natural curves */
  border-radius:30% 70% 70% 30% / 30% 30% 70% 70%;
  width:56px;
  height:56px;
  padding:0;
  display:flex;
  align-items:center;
  justify-content:center;

  font:inherit;
  font-weight:600;
  cursor:pointer;

  /* Blue gradient from lighter top to base blue bottom */
  background:linear-gradient(180deg, #1E78DC 0%, var(--main-brand-blue) 100%);
  color:#fff;

  /* Soft, large shadow with blue tint */
  box-shadow:0 10px 25px rgba(10, 88, 202, 0.3);
  transition:transform .3s ease, box-shadow .3s ease, background .3s ease, border-radius .3s ease;
  
  /* Subtle floating animation */
  animation:float 3s ease-in-out infinite;
}

/* Floating animation - gentle up and down movement */
@keyframes float {
  0%, 100% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-4px);
  }
}

.bp-chat-fab:hover{
  /* Enhanced floating on hover */
  animation:floatHover 1.5s ease-in-out infinite;
  box-shadow:0 12px 30px rgba(10, 88, 202, 0.4);
  background:linear-gradient(180deg, #1A6FD0 0%, var(--main-brand-blue-dark) 100%);
  /* Slightly more organic shape on hover */
  border-radius:35% 65% 65% 35% / 35% 35% 65% 65%;
}

@keyframes floatHover {
  0%, 100% {
    transform: translateY(-2px);
  }
  50% {
    transform: translateY(-6px);
  }
}

.bp-chat-fab:active{
  transform:scale(0.95) translateY(0); /* Tactile scale effect on click */
  box-shadow:0 6px 15px rgba(10, 88, 202, 0.25);
  animation:none; /* Stop animation on click */
}

/* Hide FAB when chat is open - prevents overlap with chat input */
.bp-chat-fab[hidden],
.bp-chat-fab[aria-hidden="true"],
.bp-chat-fab[style*="display: none"] {
  display: none !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Chat bubble SVG icon */
.bp-chat-fab svg{
  width:24px;
  height:24px;
  fill:none;
  stroke:#fff;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
  pointer-events:none; /* Prevent icon from blocking clicks */
  transition:stroke 0.3s ease, transform 0.3s ease;
}

/* FAB when chat is open - yellow "x" icon */
.bp-chat-fab[data-chat-open="true"] svg{
  stroke:var(--accent); /* Brand yellow for "x" when chat is open */
}

/* ===================== CHAT WINDOW ===================== */

/* Base: Chat wrapper - now relative to hardcoded container */
.chat-wrapper {
  position: relative !important; /* Changed from fixed - now relative to #desktop-chat-container */
  top: auto !important;
  left: auto !important;
  bottom: auto !important;
  right: auto !important;
  width: 100% !important; /* Fill parent container */
  height: 100% !important; /* Fill parent container */
  z-index: 10001; /* Above header (20), lang-menu (3000), but below FAB (10002) */
  display: flex;
  flex-direction: column;
  background: white;
  border-radius: 20px;
  box-shadow: 0 12px 48px rgba(0, 0, 0, 0.2);
  overflow: hidden;
  /* iOS border-radius clipping fix */
  background-clip: padding-box;
  -webkit-mask-image: -webkit-radial-gradient(white, black);
  mask-image: radial-gradient(white, black);
  /* CRITICAL: Remove any transform that might center the wrapper */
  transform: none !important;
  margin: 0 !important; /* CRITICAL: Remove any auto margins */
}

/* Hidden state */
.chat-wrapper[hidden] {
  display: none !important;
}

/* Chat box - slide animation */
.bp-chat-box {
  display: flex;
  flex-direction: column;
  height: 100%;
  width: 100%;
  position: relative;
  transform: translateY(100%);
  opacity: 0;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease;
}

.chat-wrapper:not([hidden]) .bp-chat-box {
  transform: translateY(0);
  opacity: 1;
}

/* 3. Header - стабільний, ніколи не рухається */
.bp-chat-header{
  height:60px !important;
  position:relative !important;
  flex-shrink:0 !important;
  width:100% !important;
  z-index:10;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 16px;
  background:linear-gradient(180deg, rgba(30, 120, 220, 0.95) 0%, rgba(10, 88, 202, 0.95) 100%);
  color:#fff;
}

/* Chat title - brand yellow accent */
#chat-title{
  color:var(--accent); /* Exact yellow from "Sozheim+" logo */
  font-weight:600; /* Slightly bolder to make it "pop" */
}
.bp-chat-close{
  border:none;
  background:transparent;
  color:#fff;
  font-size:1.5rem;
  cursor:pointer;
  width:32px;
  height:32px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  transition:background 0.2s ease;
}
.bp-chat-close:hover{
  background:rgba(255, 255, 255, 0.15);
}

/* 4. Область повідомлень - ТІЛЬКИ ВОНА МАЄ СКРОЛ */
.bp-chat-messages{
  flex-grow:1 !important;
  overflow-y:auto !important;
  width:100% !important;
  background:white !important;
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:15px;
  padding-bottom: 24px; /* Sufficient padding so last message doesn't feel 'glued' to input */
  margin:0;
  
  /* Chat container physics - buttery smooth scrolling */
  scroll-behavior: smooth; /* Fluid auto-scroll when new messages arrive */
  -webkit-overflow-scrolling: touch; /* Native momentum on mobile */
  overscroll-behavior-y: contain; /* Prevent entire page from bouncing - crucial for chat! */
  
  /* GPU acceleration for messages */
  will-change: transform; /* Hint to browser for GPU optimization */
}

/* Message bubble (single, no duplicates) */
.bp-chat-message{
  align-self:flex-start;
  display:inline-block;
  padding:12px 16px; /* Increased padding for readability */
  border-radius:20px; /* High border-radius for soft theme */
  font-size:15px;
  line-height:1.45;
  max-width:85%;
  word-wrap:break-word;
  /* Prevent flickering during fast scrolling */
  backface-visibility: hidden;
}

/* Bot - incoming messages - soft darker tone for readability */
.bp-chat-message--bot{
  background:rgba(235, 240, 245, 0.8); /* Soft, slightly darker tone */
  color:#1e3a5f; /* Deep dark blue (not pure black) for better comfort */
  border:none;
  border-radius:20px;
  /* Modern "tail" effect - sharper bottom-left corner */
  border-bottom-left-radius:4px;
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
  /* Extremely subtle shadow to pop from glass background */
  box-shadow:0 2px 4px rgba(0, 0, 0, 0.05);
}

/* User - outgoing messages - muted blue gradient for subtlety */
.bp-chat-message--user{
  align-self:flex-end;
  /* Soft muted blue gradient - subtle and quiet */
  background:linear-gradient(135deg, rgba(100, 149, 237, 0.85) 0%, rgba(70, 130, 180, 0.9) 100%);
  color:#F5F7FA; /* Slightly off-white for softer contrast */
  border-radius:20px;
  /* Modern "tail" effect - sharper bottom-right corner */
  border-bottom-right-radius:4px;
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
  /* Glass background peeks through with reduced opacity */
}

/* Chat consent block (Chat-Leitlinien §2): shown before the first message, not part of the conversation */
.bp-chat-consent{ max-width: 100%; }
.bp-chat-consent p{ margin: 0 0 8px; }
.bp-chat-consent__list{ margin: 0 0 10px; padding-inline-start: 18px; display: flex; flex-direction: column; gap: 6px; }
.bp-chat-consent__btn{ margin-top: 4px; min-height: 40px; padding: 0 16px; border-radius: var(--button-radius); border: none;
  background: var(--main-brand-blue); color: #fff; font-weight: 700; font-size: .95rem; cursor: pointer; }
.bp-chat-consent__btn:hover{ background: var(--main-brand-blue-dark); }
.bp-chat-consent__btn:disabled{ background: #9ca3af; cursor: default; }

/* Typing indicator container */
.bp-chat-message--typing{
  opacity:1;
  padding:12px 16px;
}

/* Typing dots container */
.typing-dots{
  display:inline-flex;
  align-items:center;
  gap:6px; /* Elegant spacing between dots */
  height:20px; /* Consistent height */
}

/* Individual typing dots - premium round style */
.typing-dot{
  display:inline-block;
  width:8px;
  height:8px;
  border-radius:50%; /* Perfectly round */
  background-color:var(--main-brand-blue); /* Default brand blue */
  animation:wave 1.4s ease-in-out infinite;
  flex-shrink:0;
}

/* Dot 1: Brand blue */
.typing-dot--1{
  background-color:var(--main-brand-blue);
  animation-delay:0s;
}

/* Dot 2: Brand yellow with subtle glow */
.typing-dot--2{
  background-color:var(--accent); /* Brand yellow from "+" logo */
  animation-delay:0.2s;
  /* Subtle glow so yellow doesn't lose its "pop" on light background */
  box-shadow:0 0 4px rgba(241, 196, 15, 0.4), 0 0 8px rgba(241, 196, 15, 0.2);
}

/* Dot 3: Brand blue */
.typing-dot--3{
  background-color:var(--main-brand-blue);
  animation-delay:0.4s;
}

/* Wave animation - dots move up and down */
@keyframes wave {
  0%, 60%, 100% {
    transform:translateY(0);
    opacity:0.8;
  }
  30% {
    transform:translateY(-4px);
    opacity:1;
  }
}

/* Input form - anchored at bottom */
/* 5. Форма вводу - завжди притиснута до низу ворпера */
.bp-chat-form{
  flex-shrink:0 !important;
  width:100% !important;
  border-top:1px solid #eee !important;
  background:rgba(255, 255, 255, 0.9);
  padding:10px;
  display:flex;
  align-items:flex-end;
  gap:.5rem;
  padding-bottom:calc(10px + env(safe-area-inset-bottom, 0)); /* Account for safe area on mobile */
  position:relative;
  z-index:5;
}

/* Input wrapper - contains input and send button */
.bp-chat-input-wrapper{
  position:relative;
  flex:1;
  display:flex;
  align-items:flex-end; /* Align to bottom for multi-line support */
}

.bp-chat-input{
  flex:1;
  resize:none;
  border-radius:30px; /* Smooth pill shape - maintained for single line */
  border:1px solid rgba(209, 213, 219, 0.4); /* Very subtle light-gray stroke */
  padding:.75rem 3.5rem .75rem 1rem; /* Increased padding-right (3.5rem) to prevent text overlap with send button */
  font:inherit;
  min-height:45px; /* Minimum height for single line */
  max-height:150px; /* Maximum height before scrolling */
  line-height:1.4; /* Better readability for long sentences */
  background:rgba(255, 255, 255, 0.8);
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
  transition:border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease, height 0.15s ease;
  /* Very soft inner glow instead of heavy borders */
  box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.03);
  overflow-y:auto; /* Enable scrolling when max-height is reached */
  overflow-x:hidden;
  /* Auto-expanding behavior */
  height:auto;
}

/* Custom scrollbar - ultra-thin and semi-transparent brand blue */
.bp-chat-input::-webkit-scrollbar{
  width:4px; /* Ultra-thin scrollbar */
}

.bp-chat-input::-webkit-scrollbar-track{
  background:transparent;
}

.bp-chat-input::-webkit-scrollbar-thumb{
  background:rgba(10, 88, 202, 0.3); /* Semi-transparent brand blue */
  border-radius:2px;
  transition:background 0.2s ease;
}

.bp-chat-input::-webkit-scrollbar-thumb:hover{
  background:rgba(10, 88, 202, 0.5);
}

/* Firefox scrollbar */
.bp-chat-input{
  scrollbar-width:thin;
  scrollbar-color:rgba(10, 88, 202, 0.3) transparent;
}

.bp-chat-input:focus-visible{
  outline:none;
  border-color:rgba(10, 88, 202, 0.3);
  /* Soft inner glow on focus */
  box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.03), 0 0 0 2px rgba(10, 88, 202, 0.08);
  background:rgba(255, 255, 255, 0.95);
}

/* Send button - integrated inside input field */
.bp-chat-send{
  position:absolute;
  right:4px;
  bottom:4px; /* Default: position at bottom-right for multi-line support */
  
  border:none;
  /* Soft organic shape */
  border-radius:45% 55% 50% 50%;
  width:2.2rem;
  height:2.2rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;

  cursor:pointer;

  /* Brand blue gradient background */
  background:linear-gradient(180deg, #1E78DC 0%, var(--main-brand-blue) 100%);
  color:var(--accent); /* Brand yellow for icon */
  flex-shrink:0;

  /* Minimal shadow */
  box-shadow:0 2px 6px rgba(10, 88, 202, 0.15);
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease, top .15s ease, bottom .15s ease;
  z-index:20; /* Increased from 10 to ensure it's above FAB when chat is open */
}

/* Single line state - vertically centered (applied via JavaScript class) */
.bp-chat-send.single-line{
  top:50% !important;
  bottom:auto !important;
  transform:translateY(-50%) !important;
}

/* Paper plane icon - minimal, thin-lined, tilted */
.bp-chat-send .send-icon{
  width:14px;
  height:14px;
  stroke:var(--accent); /* Brand yellow */
  stroke-width:1.5;
  /* Tilted to look like it's "taking off" */
  transform:rotate(-45deg) translate(1px, -1px);
  transition:transform .2s ease;
}

.bp-chat-send:hover{
  box-shadow:0 3px 8px rgba(10, 88, 202, 0.25);
  background:linear-gradient(180deg, #1A6FD0 0%, var(--main-brand-blue-dark) 100%);
}

/* Icon shifts up and to the right on hover */
.bp-chat-send:hover .send-icon{
  transform:rotate(-45deg) translate(3px, -3px);
}

/* Pulse effect on click - yellow color */
@keyframes sendPulse {
  0% {
    box-shadow:0 2px 6px rgba(10, 88, 202, 0.15), 0 0 0 0 rgba(241, 196, 15, 0.7);
  }
  50% {
    box-shadow:0 2px 6px rgba(10, 88, 202, 0.15), 0 0 0 8px rgba(241, 196, 15, 0);
  }
  100% {
    box-shadow:0 2px 6px rgba(10, 88, 202, 0.15), 0 0 0 0 rgba(241, 196, 15, 0);
  }
}

.bp-chat-send:active{
  transform:translateY(-50%) scale(0.95);
  animation:sendPulse 0.4s ease;
}

/* Desktop: Fixed-size bubble in bottom-right corner */
@media (min-width: 481px) {
  #desktop-chat-container {
    position: fixed !important;
    bottom: 20px !important;
    right: 20px !important;
    top: auto !important;
    left: auto !important;
    width: 380px !important;
    height: 600px !important;
    max-width: 380px !important;
    max-height: 80vh !important; /* Responsive: adapts to viewport height */
    min-width: 320px !important; /* Minimum for very small desktop windows */
    min-height: 400px !important; /* Minimum for usability */
    z-index: 999999 !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    /* Auto-resize: container recalculates position on window resize */
  }
  .chat-wrapper {
    position: relative !important; /* Relative to hardcoded container */
    width: 100% !important; /* Fill container */
    height: 100% !important; /* Fill container */
    top: auto !important;
    left: auto !important;
    bottom: auto !important;
    right: auto !important;
    transform: none !important;
    margin: 0 !important;
  }
}

/* Mobile: Drawer-style popup (not full-screen takeover) */
@media (max-width: 480px) {
  #desktop-chat-container {
    position: fixed !important;
    bottom: 0 !important;
    left: 50% !important; /* Center horizontally */
    right: auto !important;
    top: auto !important;
    width: 90vw !important; /* Responsive width - 90% of viewport */
    max-width: 90vw !important;
    height: 80dvh !important; /* Use dvh (Dynamic Viewport Height) to account for mobile browser bars */
    max-height: 80dvh !important; /* Constrained height - drawer style, allows main app navigation to remain visible */
    min-height: 400px !important; /* Minimum usable height */
    z-index: 999999 !important;
    border-top-left-radius: 20px !important;
    border-top-right-radius: 20px !important;
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.15) !important;
    /* iOS border-radius clipping fix */
    overflow: hidden !important;
    background-clip: padding-box;
    -webkit-mask-image: -webkit-radial-gradient(white, black);
    mask-image: radial-gradient(white, black);
    /* Center horizontally on mobile using transform */
    transform: translateX(-50%) !important;
    margin: 0 !important; /* Reset margins */
  }
  .chat-wrapper {
    position: relative !important; /* Still relative to container */
    width: 100% !important;
    height: 100% !important;
    border-radius: 0 !important; /* Let container handle border-radius */
    /* iOS border-radius clipping fix - ensure children are clipped */
    overflow: hidden !important;
  }
  
  .bp-chat-box{
    border-radius:0 !important;
    /* Ensure proper padding for safe areas (notches, home indicators) */
    padding-bottom:env(safe-area-inset-bottom, 0);
  }
  
  /* On mobile, header is relative */
  .bp-chat-header{
    position:relative !important;
    top:auto !important;
    left:auto !important;
    width:auto !important;
    border-top-left-radius: 20px !important;
    border-top-right-radius: 20px !important;
  }
  
  /* Reset padding-top on mobile since header is relative */
  .bp-chat-messages{
    padding-top:.75rem !important;
  }
  
  .bp-chat-fab{
    right:20px;
    bottom: calc(20px + env(safe-area-inset-bottom, 0px));
  }
}


/* ---------- A11y helper ---------- */
.sr-only{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

/* ===================== Risk badge ===================== */
.risk-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px 12px;
  border-radius:999px;
  font-weight:700;
}
.risk-badge--low{  background:#16a34a18; }
.risk-badge--mid{  background:#f59e0b18; }
.risk-badge--high{ background:#dc262618; }
.risk-badge--unknown{ background:#9ca3af18; }

/* Traffic-light indicator (green / yellow / red — the matching light is lit) */
.tl{ display:inline-flex; align-items:center; gap:5px; }
.tl-dot{
  width:11px; height:11px; border-radius:50%;
  background:#d1d5db; /* off / dimmed */
  transition: background .2s ease, box-shadow .2s ease;
}
.risk-badge--low  .tl-dot--green { background:#16a34a; box-shadow:0 0 7px 1px #16a34a88; }
.risk-badge--mid  .tl-dot--yellow{ background:#f59e0b; box-shadow:0 0 7px 1px #f59e0b88; }
.risk-badge--high .tl-dot--red   { background:#dc2626; box-shadow:0 0 7px 1px #dc262688; }
.tl-label{ font-size:14px; font-weight:700; }
.risk-badge--low  .tl-label{ color:#16a34a; }
.risk-badge--mid  .tl-label{ color:#f59e0b; }
.risk-badge--high .tl-label{ color:#dc2626; }
.risk-badge--unknown .tl-label{ color:#6b7280; }

/* ===================== Letter page (scoped) ===================== */

/* щоб модалки/чат не перекривали хедер на letter.html */
/* Letter page header - higher z-index for overlays (already has global sticky + glassmorphism) */
/* Note: z-index override is already defined earlier in this file */

/* Ensure letter-page body doesn't break sticky positioning */
.letter-page {
  overflow: visible !important;
  overflow-x: hidden; /* Only hide horizontal overflow */
}

/* Letter page container - add top padding for sticky header */
.letter-page .container,
.letter-page .letter-flow {
  /* Add top padding to account for sticky header (60px) + safe area */
  padding-top: 20px; /* header is sticky (in-flow); no fixed-clearance needed */
}

@media (max-width: 640px) {
  .letter-page .container,
  .letter-page .letter-flow {
    padding-top: 20px;
  }
}

/* Upload file "tile" */
.letter-page .file{
  display:inline-flex;
  gap:12px;
  align-items:center;
  border:2px dashed #cbd5e1;
  border-radius:12px;
  padding:16px 20px;
  cursor:pointer;
}
.letter-page .file input{ display:none; }

/* Panels */
.letter-page .panel{
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:12px;
  padding:12px;
}

/* textarea — тільки в letter-flow, щоб не зачепити інші сторінки */
.letter-page .letter-flow textarea{
  width:100%;
  border:1px solid #cbd5e1;
  border-radius:12px;
  padding:10px;
}

/* Специфічні зони (щоб не конфліктувати зі старт-карткою) */
.letter-page .send-row{ margin:10px 0; }
.letter-page #uploadScreen .actions,
.letter-page #draft-sec .actions{
  margin-top:10px;
}

/* Upload action buttons container - optimized for mobile */
.letter-flow .actions--upload {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  width: 100%;
  padding-bottom: 20px; /* Extra spacing at bottom */
  margin-top: 16px;
}

/* Upload action buttons - full width with flex proportions */
.letter-flow .actions--upload .btn {
  flex: 1; /* Equal width by default */
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 12px 18px;
  font-weight: 600;
  min-height: 48px; /* Comfortable tap target */
  border-radius: 12px; /* Consistent rounded corners */
  white-space: nowrap; /* Prevent text wrapping */
}

/* Primary button (Опрацювати) - more weight */
.letter-flow .actions--upload .btn-primary {
  flex: 2; /* Takes 2/3 of available space */
  background: var(--main-brand-blue);
  color: #fff;
  border-radius: var(--button-radius);
  transition: background 0.2s ease, transform 0.1s ease;
}
.letter-flow .actions--upload .btn-primary:hover {
  background: var(--main-brand-blue-dark);
  transform: translateY(-1px);
}
.letter-flow .actions--upload .btn-primary:active {
  background: var(--main-brand-blue-dark);
  transform: translateY(0);
}

.letter-flow .actions--upload .btn-primary.btn--keyboard-active {
  transform: scale(0.98) !important;
  opacity: 0.9 !important;
}

/* Secondary button (Очистити) - less weight */
.letter-flow .actions--upload .btn-secondary {
  flex: 1; /* Takes 1/3 of available space */
  background: #e5e7eb;
  color: #111;
}

/* Privacy assurance note - muted, small text */
.letter-flow .actions--upload .privacy-note {
  flex-basis: 100%;
  width: 100%;
  font-size: 11px;
  line-height: 1.4;
  color: var(--muted);
  margin: 0;
  margin-top: 4px;
  text-align: center;
}

/* Buttons */
.letter-page .btn{
  background:var(--main-brand-blue);
  color:#fff;
  border:none;
  padding:10px 14px;
  border-radius:var(--button-radius);
  cursor:pointer;
  transition: background 0.2s ease, transform 0.1s ease;
}
.letter-page .btn:hover{ 
  background:var(--main-brand-blue-dark);
  transform:translateY(-1px);
}
.letter-page .btn:active{ 
  background:var(--main-brand-blue-dark);
  transform:translateY(0);
}

.letter-page .btn-secondary{
  background:#e5e7eb;
  color:#111;
  border:none;
  padding:10px 14px;
  border-radius:10px;
  cursor:pointer;
}

/* Helpers */
.letter-page .row{ display:flex; gap:10px; margin-top:10px; }
.letter-page .switch{ display:inline-flex; align-items:center; gap:8px; cursor:pointer; }

@media (max-width:480px){
  .letter-page .file{
    width:100%;
    justify-content:center;
    text-align:center;
  }
}

/* ===================== Letter flow (scoped under .letter-flow) ===================== */

/* Upload header */
.letter-flow .upload__header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:12px;
}

/* Dropzone */
.letter-flow .dropzone{
  border:2px dashed #3b3b3b;
  border-radius:14px;
  padding:28px;
  text-align:center;
  margin:8px 0;
  outline:none;
}
.letter-flow .dropzone.drag{
  border-color:#3b82f6;
  background:rgb(59 130 246 / .08);
}

/* Thumbs - now inside photo preview container */
.letter-flow .thumbs{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(100px, 1fr));
  gap:12px;
  list-style:none;
  padding:0;
  margin:0;
}
.letter-flow .thumb{
  position:relative;
  background:#0f1117;
  border:1px solid #272b33;
  border-radius:12px;
  overflow:hidden;
  height:100px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.letter-flow .thumb img{ width:100%; height:100%; object-fit:cover; }
.letter-flow .thumb__meta{
  position:absolute;
  left:6px;
  bottom:6px;
  font-size:11px;
  background:rgb(0 0 0 / .5);
  padding:2px 6px;
  border-radius:6px;
}
.letter-flow .thumb__remove{
  position:absolute;
  top:6px;
  right:6px;
  border:none;
  background:rgb(0 0 0 / .6);
  color:#fff;
  border-radius:50%;
  width:28px;
  height:28px;
  cursor:pointer;
}

/* Upload footer */
.letter-flow .upload__footer{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:8px;
}

/* Upload buttons container */
.letter-flow .upload__buttons {
  display: flex;
  gap: 12px;
  align-items: stretch;
  margin-bottom: 28px;
}

/* Unified button styling - professional look with light grey background */
.letter-flow .upload__buttons .btn-secondary,
.letter-flow .upload__buttons .btn-icon {
  height: 45px;
  min-height: 45px;
  border-radius: 12px;
  border: 1px solid #D1D1D6;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
  font-size: 14px;
  cursor: pointer;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

/* Upload button - more distinct with deeper grey and bold text */
.letter-flow .upload__buttons .btn-secondary {
  flex: 1;
  padding: 0 18px;
  white-space: nowrap;
  background: #E8E8ED;
  color: #1a1a1a;
  font-weight: 600;
}

.letter-flow .upload__buttons .btn-secondary:hover {
  background: #D8D8DD;
  border-color: #B1B1B6;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.12);
}

.letter-flow .upload__buttons .btn-secondary:active {
  background: #D0D0D5;
  border-color: #A1A1A6;
  transform: scale(0.98);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

/* Icon button for camera - square 45x45px with SVG icon, matches upload button style */
.letter-flow .upload__buttons .btn-icon {
  width: 45px;
  padding: 0;
  flex-shrink: 0;
  background: #E8E8ED;
  border: 1px solid #D1D1D6;
}

.letter-flow .upload__buttons .btn-icon .camera-icon-svg {
  width: 20px;
  height: 20px;
}

.letter-flow .upload__buttons .btn-icon .camera-icon-svg path,
.letter-flow .upload__buttons .btn-icon .camera-icon-svg circle {
  stroke: #000000;
  stroke-width: 2;
}

.letter-flow .upload__buttons .btn-icon:hover {
  background: #D8D8DD;
  border-color: #B1B1B6;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.12);
}

.letter-flow .upload__buttons .btn-icon:hover .camera-icon-svg path,
.letter-flow .upload__buttons .btn-icon:hover .camera-icon-svg circle {
  stroke: #000000;
}

.letter-flow .upload__buttons .btn-icon:active {
  background: #D0D0D5;
  border-color: #A1A1A6;
  transform: scale(0.98);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

/* Photo preview container - milk background with solid border */
.letter-flow .photo-preview-container {
  border: 1px solid #E5E5EA;
  border-radius: 14px;
  background: #FDFCF9;
  padding: 16px;
  margin: 24px 0;
  min-height: 140px;
}

.letter-flow .photo-preview-container:empty::before {
  content: attr(data-empty-text);
  display: block;
  text-align: center;
  color: #9ca3af;
  padding: 50px 20px;
  font-size: 14px;
}

/* Thumbs inside preview container */
.letter-flow .photo-preview-container .thumbs {
  margin: 0;
}

/* File count badge inside preview container - tiny elegant badge */
.letter-flow .photo-preview-container .file-count-badge {
  display: inline-block;
  background: rgba(0, 86, 179, 0.08);
  color: #0056b3;
  padding: 3px 8px;
  border-radius: 8px;
  font-size: 11px;
  font-weight: 500;
  margin-bottom: 12px;
  letter-spacing: 0.2px;
}

/* ===== Start card (single consolidated version) ===== */
.letter-flow .card--start,
.letter-flow #start-card.card{
  position:relative;
  background:linear-gradient(180deg,#ffffff 0%, #f9fbff 100%);
  color:var(--text);
  border-radius:18px;
  padding:22px 20px; /* Consistent left/right padding for content alignment */
  padding-bottom: 120px; /* Extra padding to prevent content from being hidden behind sticky footer */
  border:1px solid #bcd0f0;
  box-shadow:0 10px 30px rgba(11,61,145,.12);
  /* Performance optimization for smooth scrolling */
  contain: paint;
  will-change: transform;
  transform: translateZ(0); /* Force GPU acceleration */
  overflow: hidden; /* Prevent content from breaking card borders */
}

/* Ensure hidden sections are completely removed from layout */
.letter-flow #start-card[hidden],
.letter-flow #uploadScreen[hidden] {
  display: none !important; /* Completely remove from layout, no space taken */
}

/* Ensure upload screen starts at the very top when visible - no spacing */
.letter-flow #uploadScreen:not([hidden]) {
  margin-top: 0 !important;
  padding-top: 0 !important;
  margin-bottom: 0;
}

/* Ensure upload screen content starts at top */
.letter-flow #uploadScreen .upload__head {
  margin-top: 0;
  padding-top: 0;
}

.letter-flow #uploadScreen .upload__title {
  margin-top: 0;
}

/* Ensure content inside card maintains left alignment - no flex or centering that would shift text */
.letter-flow #start-card .start-title,
.letter-flow #start-card .start-intro,
.letter-flow #start-card .field,
.letter-flow #start-card .consent,
.letter-flow #start-card .help-link {
  padding-left: 0;
  margin-left: 0;
  text-align: left; /* Explicit left alignment */
}

/* Ensure card content container doesn't have flex that would affect alignment */
.letter-flow #start-card.card {
  display: block; /* Block layout, not flex */
}

/* premium aura */
.letter-flow .card--start::before{
  content:"";
  position:absolute;
  inset:-2px;
  border-radius:20px;
  background:
    radial-gradient(120% 120% at 10% 0%, rgba(59,130,246,.18), transparent 55%),
    radial-gradient(120% 120% at 90% 100%, rgba(11,61,145,.18), transparent 55%);
  z-index:-1;
}

.letter-flow .card--start .start-title{
  margin:0 0 6px;
  font-size:22px;
  font-weight:800;
  letter-spacing:-.2px;
}
/* Start-card spacing for muted text */
.letter-flow .card--start .muted{
  margin: 0 0 14px;
}


.letter-flow #start-card .label,
.letter-flow #start-card .field label{
  display:block;
  margin:8px 0 6px;
  font-weight:700;
}

/* PIN field container - add spacing before consent checkbox */
.letter-flow #start-card .field:has(#startPin){
  margin-bottom:16px;
}

/* Password input wrapper with toggle button */
.password-input-wrapper {
  position: relative;
  display: flex;
  align-items: center;
}

.password-input-wrapper .bp-input {
  padding-right: 50px; /* Space for toggle button */
}

.password-toggle-btn {
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  background: transparent;
  border: none;
  outline: none;
  cursor: pointer;
  padding: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  min-height: 40px;
  width: 40px;
  height: 40px;
  border-radius: 8px;
  transition: background-color 0.2s ease;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
  z-index: 10;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.password-toggle-btn:hover {
  background-color: rgba(0, 0, 0, 0.05);
}

.password-toggle-btn:active {
  background-color: rgba(0, 0, 0, 0.1);
  transform: translateY(-50%) scale(0.95);
}

.password-toggle-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  user-select: none;
}

.password-toggle-icon-svg {
  width: 20px;
  height: 20px;
  color: #6b7280;
  stroke: currentColor;
  transition: color 0.2s ease;
}

.password-toggle-btn:hover .password-toggle-icon-svg {
  color: var(--brand);
}

.password-toggle-btn[aria-pressed="true"] .password-toggle-icon-svg {
  color: var(--brand);
}

/* Add spacing to consent label (works as fallback if :has() not supported) */
.letter-flow #start-card .consent {
  margin-top:16px;
}

/* Prominent, easy-to-tap consent card — large tap target for phones / older users */
.letter-flow #start-card .consent--card{
  display:flex;
  align-items:flex-start;
  gap:14px;
  margin-top:20px;
  padding:16px 18px;
  border:2px solid #cbd5e1;
  border-radius:14px;
  background:#fff;
  cursor:pointer;
  transition:border-color .15s ease, background-color .15s ease, box-shadow .15s ease;
  -webkit-tap-highlight-color:transparent;
}
.letter-flow #start-card .consent--card:hover,
.letter-flow #start-card .consent--card:focus-within{
  border-color:var(--brand);
  box-shadow:0 0 0 3px rgba(10,88,202,.12);
}
/* Clear "checked" state (modern browsers with :has()) */
.letter-flow #start-card .consent--card:has(#startConsent:checked){
  border-color:#059669;
  background:rgba(5,150,105,.06);
}
.letter-flow #start-card .consent--card #startConsent{
  width:28px;
  height:28px;
  flex:0 0 auto;
  margin:1px 0 0;
  accent-color:var(--brand);
  cursor:pointer;
}
.letter-flow #start-card .consent--card span{
  font-size:15px;
  line-height:1.45;
}

/* Field hint styling */
.letter-flow #start-card .field-hint{
  display:block !important; /* Ensure visibility - prevent display:none */
  visibility: visible !important; /* Ensure visibility - prevent visibility:hidden */
  margin-top:6px;
  font-size:13px;
  color:var(--muted);
}

/* "EVERYTHING IS LOCKED" UI: Force visibility when lockout is active */
.letter-flow #start-card.is-locked .field-hint,
.letter-flow #start-card .field.is-locked .field-hint {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: #dc2626 !important;
  font-weight: 600 !important;
}

.letter-flow #start-card.is-locked .field-hint:empty::before {
  content: "Loading timer...";
  color: #dc2626;
  font-weight: 600;
}

/* VISIBILITY OVERKILL: Brute force visibility for body.is-locked */
body.is-locked .letter-flow #start-card .field-hint,
body.is-locked #start-card .field-hint,
body.is-locked .field-hint {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: #dc2626 !important;
  font-weight: 600 !important;
  background-color: transparent !important;
  position: relative !important;
  z-index: 999 !important;
}

body.is-locked .letter-flow #start-card .field-hint:empty::before,
body.is-locked #start-card .field-hint:empty::before {
  content: "LOCKED" !important;
  color: #dc2626 !important;
  font-weight: 600 !important;
}

.letter-flow #startCode,
.letter-flow #startPin{
  width:100%; /* Full width, no hardcoded pixel values */
  border:1.5px solid #cbd5e1;
  border-radius:12px;
  padding:11px 12px;
  font-size:16px;
  background:#f7fbff;
  text-align:left; /* Ensure consistent left alignment for placeholders */
  transition:border-color .15s, box-shadow .15s, background .15s;
}

/* PIN input with toggle button needs extra right padding */
.password-input-wrapper #startPin {
  padding-right: 50px; /* Space for toggle button */
}
.letter-flow #start-card input[type="email"]:focus,
.letter-flow #startCode:focus,
.letter-flow #startPin:focus{
  background:#fff;
  border-color:var(--brand);
  box-shadow:0 0 0 3px rgba(11,61,145,.14);
}

.letter-flow #start-card .check{
  display:flex;
  gap:10px;
  margin:12px 0;
  align-items:flex-start;
  font-size:14px;
}

.letter-flow #start-card .actions{ 
  margin-top:8px; 
}

/* Start button container - single centered primary action */
.letter-flow #start-card .actions--start{
  /* Sticky footer styling - stays inside card borders */
  position: sticky;
  bottom: 0;
  z-index: 100;
  width: 100%; /* Full width container */
  background: transparent !important;
  padding: 15px 20px; /* Proper padding inside card borders */
  margin-top: 24px; /* Space above button */
  /* Account for safe area on mobile devices (notches, home indicators) */
  padding-bottom: calc(15px + env(safe-area-inset-bottom, 0));
  
  /* Center the button inside the sticky footer */
  display: flex;
  justify-content: center; /* Center button horizontally */
  align-items: center; /* Center button vertically */
  gap: 0;
  direction: ltr; /* Force LTR to keep buttons in order for all languages */
}

.letter-flow #start-card .btn{
  padding:12px 24px;
  border-radius:12px;
  font-weight:700;
  cursor:pointer;
  transition:transform .06s ease, filter .18s ease;
  white-space:nowrap; /* Prevent text wrapping for longer translations like "Започни" */
  overflow:hidden;
  text-overflow:ellipsis; /* Fallback if text is still too long */
}

/* Primary button (Почати) - Centered with proper width */
.letter-flow #start-card .btn-primary{
  background:var(--main-brand-blue);
  border:1px solid var(--main-brand-blue);
  color:#fff;
  border-radius:var(--button-radius);
  transition: background 0.2s ease, transform 0.1s ease, opacity 0.2s ease;
  /* Centered button - respects footer padding */
  width: 100%; /* Full width within footer padding */
  max-width: 350px; /* Prevents stretching on tablets/desktops */
  margin: 0 auto; /* Center the button */
  /* Floating shadow effect */
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.letter-flow #start-card .btn-primary:hover:not(:disabled){
  background:var(--main-brand-blue-dark);
  border-color:var(--main-brand-blue-dark);
  transform:translateY(-1px);
}
.letter-flow #start-card .btn-primary:active:not(:disabled){
  background:var(--main-brand-blue-dark);
  border-color:var(--main-brand-blue-dark);
  transform:translateY(0);
}
.letter-flow #start-card .btn-primary:disabled{
  opacity:0.5;
  cursor:not-allowed;
  background:#9ca3af;
  border-color:#9ca3af;
  transform:none !important;
}
.letter-flow #start-card .btn-primary:disabled:hover{
  background:#9ca3af;
  border-color:#9ca3af;
  transform:none !important;
}

/* Visual feedback for keyboard-triggered button presses */
.btn--keyboard-active {
  transform: scale(0.98) !important;
  opacity: 0.9 !important;
  transition: transform 0.1s ease, opacity 0.1s ease !important;
}

/* Secondary button (Назад) */
.letter-flow #start-card .btn-secondary{
  background:#fff;
  border:1px solid #D1D1D6;
  color:#1a1a1a;
}
.letter-flow #start-card .btn-secondary:hover{
  background:#F5F5F5;
  border-color:#B1B1B6;
  transform:translateY(-1px);
}

/* Primary button fills width on all screens */
@media (min-width: 480px) {
  .letter-flow #start-card .actions--start .btn-primary {
    max-width: 400px; /* Reasonable max width on larger screens */
  }
}

/* ВАЖЛИВО: якщо ти стилізуєш "ніби disabled", але хочеш ловити кліки для shake — залишаємо pointer-events */
.letter-flow #start-card .btn.is-disabled{
  opacity:.6;
  cursor:not-allowed;
  transform:none !important;
  filter:none !important;
  pointer-events:auto;
}

/* ===== Lockout Overlay (only covers start-card area) ===== */
.lockout-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  border-radius: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 100;
  pointer-events: auto;
}

.lockout-overlay-content {
  text-align: center;
  padding: 2rem 1.5rem;
  max-width: 90%;
}

.lockout-icon {
  margin: 0 auto 1.5rem;
  width: 48px;
  height: 48px;
  color: var(--danger, #dc2626);
  display: flex;
  align-items: center;
  justify-content: center;
}

.lockout-title {
  margin: 0 0 0.75rem;
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--text, #111827);
}

.lockout-message {
  margin: 0 0 1.5rem;
  font-size: 0.95rem;
  color: var(--muted, #6b7280);
  line-height: 1.5;
}

.lockout-countdown {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--brand, #0A58CA);
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.05em;
  margin-top: 1rem;
}

@media (max-width: 480px) {
  .lockout-overlay-content {
    padding: 1.5rem 1rem;
  }
  
  .lockout-icon {
    width: 40px;
    height: 40px;
    margin-bottom: 1rem;
  }
  
  .lockout-title {
    font-size: 1.1rem;
  }
  
  .lockout-message {
    font-size: 0.9rem;
  }
  
  .lockout-countdown {
    font-size: 1.25rem;
  }
}

/* Input errors */
.input--error{
  border-color:#dc2626 !important;
  box-shadow:0 0 0 3px rgba(220,38,38,.15) !important;
}
.help-error{
  color:#b91c1c;
  font-size:13px;
  margin-top:6px;
  min-height:1.2em;
}

/* Shake animation */
@keyframes shake{
  10%,90%{ transform:translateX(-1px); }
  20%,80%{ transform:translateX(2px); }
  30%,50%,70%{ transform:translateX(-4px); }
  40%,60%{ transform:translateX(4px); }
}
.shake{ animation:shake .35s; }

/* Explanation Header - Flex container for title and button */
.letter-page .letter-flow .explanation-header,
.letter-page .letter-flow #explanation-header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 24px;
  margin-bottom: 12px;
  font-size: 1.2rem;
  font-weight: 600;
  color: var(--text);
}

/* TTS Button Orbit Container - Simple wrapper */
.tts-button-orbit {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: auto;
  flex-shrink: 0;
}

/* TTS Button - Clean Liquid Glass */
.tts-button {
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(0, 150, 255, 0.3);
  border-radius: 50%;
  width: 32px;
  height: 32px;
  min-width: 32px;
  min-height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
  margin: 0;
  transition: all 0.2s ease;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
  user-select: none;
  color: #0066cc;
}

.tts-button svg {
  width: 16px;
  height: 16px;
  stroke: #0066cc;
  fill: none;
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: opacity 0.2s ease;
  opacity: 0.8;
}

.tts-button:hover {
  transform: scale(1.05);
}

.tts-button:hover svg {
  opacity: 1;
}

.tts-button:focus-visible {
  outline: 2px solid rgba(0, 150, 255, 0.5);
  outline-offset: 2px;
}


/* якщо реально disabled атрибутом — блокуємо кліки */
button:disabled{
  opacity:.6;
  cursor:not-allowed;
  pointer-events:none;
}

/* ===== Datenschutz dialog ===== */
.dp-link { display:inline-block; margin-left:8px; font-weight:600; }

.dp-dialog { border:none; padding:0; border-radius:14px; max-width:720px; width:92%; }
.dp-dialog::backdrop { background: rgba(0,0,0,.45); }

.dp-dialog__box { padding:16px; }
.dp-dialog__header { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.dp-dialog__close { border:none; background:transparent; font-size:22px; cursor:pointer; }

.dp-dialog__content { margin-top:10px; line-height:1.45; }
.dp-dialog__footer { display:flex; justify-content:flex-end; margin-top:12px; }

/* RTL support for privacy dialog */
.dp-dialog__box[dir="rtl"] {
  text-align: right;
}

.dp-dialog__box[dir="rtl"] h3,
.dp-dialog__box[dir="rtl"] p {
  text-align: right;
}

.dp-dialog__box[dir="rtl"] .dialog-actions {
  text-align: left; /* Keep button on left for consistency */
}

.help-link{
  border:0;
  background:transparent;
  padding:0;
  margin-left:10px;
  font:inherit;
  color:#1d4ed8;
  text-decoration:underline;
  cursor:pointer;
}
.help-link:hover{ filter:brightness(.9); }

/* Універсальний dialog (можна і для Datenschutz використати) */
.bp-dialog{
  border:none;
  border-radius:14px;
  max-width:560px;
  width:min(92vw, 560px);
  padding:0;
}
.bp-dialog::backdrop{ background:rgba(0,0,0,.35); }

.bp-dialog__box{ padding:18px 18px 16px; }
.bp-dialog__header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}
.bp-dialog__close{
  border:none;
  background:transparent;
  font-size:22px;
  cursor:pointer;
}
.bp-dialog__content p{ margin:0; line-height:1.5; }

/* RTL support for code help dialog */
.bp-dialog__box[dir="rtl"] {
  text-align: right;
}

.bp-dialog__box[dir="rtl"] h3,
.bp-dialog__box[dir="rtl"] p {
  text-align: right;
}

.bp-dialog__box[dir="rtl"] .dialog-actions {
  text-align: left; /* Keep button on left for consistency */
}


/* ===================== LETTER (Опрацювати лист) — responsive fixes ===================== */

/* 1) Дозволяємо тексту стискатися у flex-контейнерах */
.letter-page .letter-flow .upload__header > *,
.letter-page .letter-flow .upload__footer > *,
.letter-page .letter-flow .send-row,
.letter-page .letter-flow .panel{
  min-width: 0;
}


/* Simple Explanation - highlighted section with Simple Language */
.letter-page .letter-flow .explanation-text,
.letter-page .letter-flow #simple-explanation-content {
  background: #f8faff;
  border-left: 5px solid #007bff;
  padding: 15px;
  font-size: 1.1rem;
  line-height: 1.6;
  color: #333;
  margin: 16px 0 0 0;
  display: none; /* Hidden by default, shown when content is available */
}

/* RTL support for Farsi and Arabic - text alignment but keep border on left */
.letter-page .letter-flow #simple-explanation-content[dir="rtl"] {
  text-align: right;
  border-left: 5px solid #007bff;
  border-right: none; /* Keep left border for consistency */
}

/* TTS Button Wrapper - spacing after explanation */
.letter-page .letter-flow .tts-button-wrapper {
  margin-top: 15px;
  margin-bottom: 24px;
}

/* TTS Voice Warning - smaller, italic, helpful hint style */
.letter-page .letter-flow .tts-voice-warning {
  font-size: 0.75rem;
  color: #d32f2f;
  margin-top: 4px;
  line-height: 1.4;
  font-style: italic;
  text-align: right; /* RTL for Farsi */
  max-width: 100%;
}

/* Section headers in result body - consistent spacing */
.letter-page .letter-flow .result__body h3 {
  margin-top: 24px;
  margin-bottom: 12px;
  font-size: 1.2rem;
  font-weight: 600;
  color: var(--text);
}

/* Ensure consistent spacing for first section header after explanation */
.letter-page .letter-flow .result__body > h3:first-of-type {
  margin-top: 24px;
}

.letter-page .letter-flow .simple-explanation {
  background: #f0f7ff;
  border-left: 4px solid #007bff;
  padding: 15px;
  margin: 16px 0 24px 0;
}

.letter-page .letter-flow #simple-explanation-text {
  font-size: 1.1rem;
  line-height: 1.5;
  color: var(--text);
}

.letter-page .letter-flow .simple-explanation strong {
  font-weight: 700;
  color: var(--brand);
  background: rgba(255, 255, 255, 0.6);
  padding: 2px 4px;
  border-radius: 4px;
}

/* Sticky footer for result section Send button */
.letter-flow #result-sec.result {
  padding-bottom: 120px; /* Extra padding to prevent content from being hidden behind sticky footer */
  overflow: hidden; /* Prevent content from breaking card borders */
  /* Performance optimization for smooth scrolling */
  contain: paint;
  will-change: transform;
  transform: translateZ(0); /* Force GPU acceleration */
}

.letter-flow #result-sec .result__body {
  padding-bottom: 0; /* Remove any default padding-bottom to allow sticky footer to work */
}

.letter-flow .actions--draft {
  /* Sticky footer styling - stays inside card borders */
  position: sticky;
  bottom: 0;
  z-index: 100;
  width: 100%; /* Full width container */
  background: linear-gradient(to top, var(--bg) 72%, rgba(247, 248, 250, 0) 100%);
  padding: 15px 20px; /* Proper padding inside card borders */
  margin-top: 24px; /* Space above button */
  /* Account for safe area on mobile devices (notches, home indicators) */
  padding-bottom: calc(15px + env(safe-area-inset-bottom, 0));
  
  /* Center the buttons inside the sticky footer */
  display: flex;
  justify-content: center; /* Center buttons horizontally */
  align-items: center; /* Center buttons vertically */
  flex-direction: column; /* Stack buttons vertically */
  gap: 12px;
}

.letter-flow .actions--draft .btn-primary {
  /* Centered button - respects footer padding */
  width: 100%; /* Full width within footer padding */
  max-width: 350px; /* Prevents stretching on tablets/desktops */
  margin: 0 auto; /* Center the button */
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.letter-flow .actions--draft .btn-secondary {
  /* Secondary button - same width as primary for consistency */
  width: 100%; /* Full width within footer padding */
  max-width: 350px; /* Prevents stretching on tablets/desktops */
  margin: 0 auto; /* Center the button */
}

/* 2) Агресивний перенос довгих слів/текстів (OCR, установи, e-mail) */
.letter-page .letter-flow p,
.letter-page .letter-flow li,
.letter-page .letter-flow a,
.letter-page .letter-flow #explanation,
.letter-page .letter-flow .simple-explanation,
.letter-page .letter-flow .panel{
  overflow-wrap: anywhere;
  word-break: break-word;
  hyphens: auto;
}

/* 3) Upload header: заголовок + кнопка "Додати фото" мають переноситись */
.letter-page .letter-flow .upload__header{
  flex-wrap: wrap;
  align-items: flex-start;
}

.letter-page .letter-flow .upload__header h2{
  margin: 0;
  flex: 1 1 240px; /* заголовок може займати рядок */
}

.letter-page .letter-flow .upload__controls{
  flex: 0 0 auto;
}

/* 4) Upload footer: "Файлів" + кнопки не мають вилазити */
.letter-page .letter-flow .upload__footer{
  flex-wrap: wrap;
  gap: 10px;
}

.letter-page .letter-flow .upload__footer .spacer{
  display: none; /* на мобільному він часто ламає розкладку */
}

@media (max-width: 480px){
  /* кнопки внизу — на всю ширину, одна під одною */
  .letter-page .letter-flow .upload__footer .btn{
    width: 100%;
  }
  
  /* Ensure card has adequate padding on mobile */
  .letter-flow #start-card.card{
    padding:20px 16px;
  }
  
  /* Ensure inputs maintain consistent styling on mobile */
  .letter-flow #startCode,
  .letter-flow #startPin{
    width:100%; /* Ensure full width on mobile, no hardcoded pixel values */
    font-size:16px; /* Prevent zoom on iOS */
    padding:12px 12px; /* Slightly more padding for better touch targets */
    text-align:left; /* Consistent left alignment for placeholders */
  }
}

#bpEmail{
  display: inline-block;
  overflow-wrap: anywhere;
}


/* ===================== GLOBAL FOOTER (home only) ===================== */
.app-footer{
  max-width: 820px;
  margin: 18px auto 24px;
  padding: 8px 16px;
  text-align: center;
  color: var(--muted);
}

.app-footer__inner{
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
}

.app-footer__gdpr{
  font-size: 11px;
  color: var(--muted);
  white-space: normal;
  margin: 0;
  padding: 0;
  line-height: 1.4;
}

.app-footer a{
  color: var(--muted);
  text-decoration: none;
  font-weight: 400;
  font-size: 12px;
  letter-spacing: 0.02em;
  transition: color 0.2s ease;
}

.app-footer a:hover{
  color: var(--brand);
  text-decoration: none;
}

.app-footer a:focus-visible{
  outline: 2px solid rgba(10, 88, 202, 0.45);
  outline-offset: 3px;
  border-radius: 2px;
}

.app-footer__row{
  margin: 0;
  line-height: 1.5;
}

.app-footer__contact{
  font-size: 12px;
  color: var(--muted);
}

.app-footer__contact span{
  color: var(--muted);
  margin-right: 4px;
}

.app-footer__legal{
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.2rem 0.65rem;
  max-width: 100%;
  margin: 2px 0 0;
  padding: 4px 0 2px;
  font-size: 12px;
  line-height: 1.5;
}

.app-footer__sep{
  color: var(--muted);
  user-select: none;
  opacity: 0.5;
}

.app-footer__copy{
  font-size: 12px;
  color: var(--muted);
  margin: 0;
  text-align: center;
  width: 100%;
}

/* мобільно: ще компактніше */
@media (max-width: 480px){
  .app-footer{
    padding: 8px 12px;
  }
  .app-footer__gdpr{
    font-size: 10px;
  }
  .app-footer a,
  .app-footer__contact,
  .app-footer__legal,
  .app-footer__copy{
    font-size: 11px;
  }
  .app-footer__legal{
    gap: 0.25rem 0.5rem;
    padding-top: 2px;
  }
}

/* ===================== CRISIS/EMG — responsive fix ===================== */

/* 1) Ніколи не даємо елементам ширину більшу за контейнер */
.emg .container,
.emg .container *{
  max-width: 100%;
  box-sizing: border-box;
}

/* 2) Дозволяємо тексту “ламатися”, якщо слова/посилання довгі */
.emg .container p,
.emg .container li,
.emg .container a{
  overflow-wrap: anywhere;
  word-break: normal;
}

/* 3) Якщо десь є рядок з кнопками/лінками в один ряд — дозволяємо перенос */
.emg .row,
.emg .actions,
.emg .btn-row{
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}

/* 4) Важливо для flex: щоб елементи могли стискатись і не “виштовхували” рамку */
.emg .row > *,
.emg .actions > *,
.emg .btn-row > *{
  min-width: 0;
  flex: 1 1 160px;
}

/* 5) Коли лінк/кнопка довгі — дозволь перенос рядка */
.emg a,
.emg button{
  white-space: normal;
}

/* ===================== LEGAL PAGES ===================== */
.legal-page .legal h1{
  margin: 12px 0 6px;
  font-size: clamp(24px, 4.2vw, 34px);
  font-weight: 700;
  letter-spacing: -0.02em;
}

.legal-panel{
  padding: 16px;
  line-height: 1.6;
}

.legal-panel h2{
  margin: 16px 0 6px;
  font-size: 16px;
  font-weight: 800;
}

.legal-panel p{
  margin: 0 0 10px;
}

.legal a {
  font-size: 1rem;
  display: inline-block;
  padding: 8px 0;
}

/* ===================== LEGAL PAGES (Impressum / Datenschutz) ===================== */
.legal{
  max-width: 720px;        /* щоб не було “на весь телефон” */
  margin: 0 auto;
  font-size: 16px;         /* базовий текст менший і читабельний */
  line-height: 1.6;
}

/* Public/legal secondary pages: pin header to viewport; scroll main content only */
body.legal-fixed-header-page {
  --public-header-offset: calc(60px + env(safe-area-inset-top, 0px));
  height: 100dvh;
  overflow: hidden !important;
}

body.legal-fixed-header-page .app-header {
  position: fixed !important;
  left: 0;
  right: 0;
  top: 0 !important;
  z-index: 1100 !important;
}

body.legal-fixed-header-page > main[role="main"] {
  margin-top: var(--public-header-offset);
  height: calc(100dvh - var(--public-header-offset));
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
}

.legal h1{
  margin: 14px 0 10px;
  font-size: clamp(28px, 7vw, 40px);
  line-height: 1.1;
  font-weight: 750;
  letter-spacing: -0.02em;
}

.legal h2{
  margin: 18px 0 8px;
  font-size: clamp(16px, 4.5vw, 22px);
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: -0.01em;
}

/* обмежуємо довжину рядка, щоб читалось спокійніше */
.legal p, .legal li{
  max-width: 60ch;
}

.legal a{
  color: var(--brand);
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* ===================== LOADING OVERLAY ===================== */
/* Overlay starts below header to keep header visible */
.loading-overlay {
  position: fixed;
  top: 64px; /* Start below header (header padding: 12px top + ~40px content + 12px bottom ≈ 64px) */
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999; /* Below header z-index (2000) but above content */
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.loading-overlay[hidden] {
  display: none;
}

.loading-content {
  text-align: center;
  max-width: 320px;
  width: 90%;
  padding: 0 20px;
}

/* Progress Tube Container */
.progress-tube-container {
  margin-bottom: 24px;
}

.progress-tube {
  width: 100%;
  height: 12px;
  background: #E5E5EA;
  border-radius: 999px;
  overflow: hidden;
  position: relative;
  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.06);
}

.progress-tube-fill {
  height: 100%;
  width: 0%;
  background: var(--main-brand-blue);
  border-radius: 999px;
  transition: width 0.3s ease;
  box-shadow: 0 0 8px rgba(10, 88, 202, 0.3);
  position: relative;
  overflow: hidden;
}

.progress-tube-fill::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(90deg, 
    transparent 0%, 
    rgba(255, 255, 255, 0.3) 50%, 
    transparent 100%);
  animation: shimmer 1.5s infinite;
}

@keyframes shimmer {
  0% { transform: translateX(-100%); }
  100% { transform: translateX(100%); }
}

/* Loading Stats */
.loading-stats {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.loading-percentage {
  font-size: 32px;
  font-weight: 700;
  color: var(--main-brand-blue);
  line-height: 1;
}

.loading-text {
  font-size: 14px;
  color: var(--muted);
  font-weight: 500;
}

/* ===================== HOME PAGE: Hard-Override Layout ===================== */
/* Landing: pure white canvas — no tint, no mist, no paper wash */
html:has(body.home-page-body) {
  background-color: #ffffff !important;
}

/* Rigid layout for home page only - scoped to body.home-page-body */
body.home-page-body {
  height: 100dvh !important;
  width: 100vw !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  margin: 0 !important;
  padding: 0 !important;
  background-color: #ffffff !important;
}

body.home-page-body .fade-in {
  animation: homeFadeIn 0.42s cubic-bezier(0.2, 0.75, 0.2, 1) forwards;
}

@media (prefers-reduced-motion: reduce) {
  body.home-page-body .fade-in {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
}
body.home-page-body .app-header {
  flex: 0 0 auto !important;
}
/* Public header utility icon button: shared family across pages */
.app-header > a.lang-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  padding: 0;
  border-radius: 999px;
  border: 1px solid rgba(223, 235, 255, 0.26);
  background: rgba(255, 255, 255, 0.07);
  color: rgba(246, 250, 255, 0.9);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14);
  transition: background-color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}
.app-header > a.lang-btn:hover{
  background: rgba(255, 255, 255, 0.11);
  border-color: rgba(236, 245, 255, 0.4);
}
.app-header > a.lang-btn:focus-visible{
  outline: none;
  border-color: rgba(247, 251, 255, 0.62);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.18),
    0 0 0 2px rgba(10, 88, 202, 0.12);
}
.app-header #lang-btn.lang-btn{
  min-width: 49px;
  height: 30px;
  padding: 0 9px 0 10px;
  border-color: rgba(223, 235, 255, 0.3);
  background: rgba(255, 255, 255, 0.08);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.16);
}
.app-header #lang-btn.lang-btn:hover{
  border-color: rgba(234, 243, 255, 0.46);
  background: rgba(255, 255, 255, 0.12);
}
.app-header #lang-btn.lang-btn:focus-visible{
  border-color: rgba(245, 250, 255, 0.62);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.2),
    0 0 0 2px rgba(10, 88, 202, 0.12);
}
.app-header #lang-btn.lang-btn::after{
  width: 4.5px;
  height: 4.5px;
  border-right-width: 1.3px;
  border-bottom-width: 1.3px;
  opacity: 0.74;
}
.app-header #lang-code{
  font-size: 12.5px;
  font-weight: 590;
  letter-spacing: 0.02em;
}

body.home-page-body .app-footer {
  flex: 0 0 auto !important;
  height: auto !important;
  max-height: 22dvh !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  margin-top: 2px !important;
  margin-bottom: max(10px, env(safe-area-inset-bottom, 0px)) !important;
  padding-top: 14px !important;
  padding-bottom: 12px !important;
  color: #64748b !important;
  background: #eef2f8 !important;              /* matches the soft canvas */
  border-top: 1px solid #dbe3ee !important;    /* hairline divider, visible on the grey canvas */
}
body.home-page-body .app-footer__inner {
  gap: 6px !important;
}
body.home-page-body .app-footer__gdpr {
  color: #64748b !important;
  font-weight: 500 !important;
  white-space: normal !important;
  line-height: 1.45 !important;
  font-size: clamp(0.72rem, 1.9vw, 0.8125rem) !important;
  letter-spacing: 0.01em !important;
}
body.home-page-body .app-footer a,
body.home-page-body .app-footer__contact,
body.home-page-body .app-footer__contact span {
  color: #5b6a7a !important;
  font-weight: 500 !important;
  letter-spacing: 0.03em !important;
}
body.home-page-body .app-footer a:hover {
  color: var(--brand) !important;
}
body.home-page-body .app-footer__copy {
  color: #64748b !important;
  font-weight: 500 !important;
  letter-spacing: 0.02em !important;
}
body.home-page-body .app-footer__sep {
  color: #cbd5e1 !important;
  opacity: 0.85 !important;
}
body.home-page-body main#main {
  flex: 1 1 auto !important;
  align-self: stretch !important;
  width: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: stretch !important;
  gap: 0 !important;
  overflow: hidden !important;
  padding: 10px 18px 6px !important;
  background-color: #fcfdff !important;
}

/* Phone: let stack use calc(100vw - 32px); hidden overflow clips breakout */
@media (max-width: 767.98px){
  body.home-page-body main#main{
    overflow: visible !important;
  }
}
body.home-page-body .container {
  background-color: #fcfdff !important;
}
body.home-page-body .home-hero-stack {
  --home-surface-radius: 18px;
  --home-accent-surface-radius: 13px;
  flex: 0 0 auto !important;
  flex-shrink: 0 !important;
  align-self: center !important;
  gap: 15px !important;
  min-height: 0 !important;
  border: none !important;
  background: #fcfdff !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding: 0 16px !important;
}

@media (min-width: 768px){
  body.home-page-body .home-hero-stack{
    width: 100% !important;
    max-width: min(100%, 560px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
  }
}

@media (min-width: 1024px){
  body.home-page-body .home-hero-stack{
    width: 100% !important;
    max-width: min(100%, 540px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
  }
}
body.home-page-body .hero-section {
  flex: 0 0 auto !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 4px !important;
  max-width: none !important;
  width: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  align-items: center !important;
}

body.home-page-body .hero-section.home-hero {
  padding-top: clamp(16px, 4.2vw, 26px) !important;
  padding-bottom: 8px !important;
  padding-left: 8px !important;
  padding-right: 8px !important;
  background-color: #fcfdff !important;
}

body.home-page-body .home-nav {
  flex: 0 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 10px !important;
  /* Avoid clipping card shadows at the last row (corner wedge artifacts in WebKit). */
  overflow: visible !important;
  padding-block: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  background-color: #fcfdff !important;
}

/* Landing nav rows: skip entrance transform — avoids compositing seams at rounded corners. */
body.home-page-body .home-nav .fade-in { animation: none !important; opacity: 1 !important; transform: none !important; }
body.home-page-body .home-nav .big-btn.home-action-card {
  min-height: clamp(3.52rem, 10.5vw, 3.82rem) !important;
  margin: 0 !important;
  white-space: normal !important;
  word-wrap: break-word !important;
  overflow-wrap: break-word !important;
}

body.home-page-body .home-nav .big-btn.home-action-card{
  border-radius: var(--home-surface-radius);
}

body.home-page-body .home-nav .home-action-card .big-btn-icon-wrap{
  border-radius: var(--home-accent-surface-radius);
}
body.home-page-body #bp-chat-fab {
  bottom: 100px !important;
}

/* Letter workspace: session panel + operator strip + honesty notes (narrow scope) */
.letter-flow .bp-letter-session-panel {
  margin: 0 0 12px;
  padding: 12px 14px;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: #fafbfc;
}

.letter-flow .bp-letter-session-panel[hidden] {
  display: none !important;
}

.letter-flow .bp-letter-session-framing__text {
  margin: 0;
  font-size: 14px;
  line-height: 1.55;
  color: #1e293b;
  white-space: pre-line;
}

.letter-flow .bp-operator-truth-strip {
  margin: 0;
  padding: 0;
  font-size: 13px;
  line-height: 1.45;
  color: #0f172a;
  background: transparent;
  border: none;
  border-radius: 0;
}

.letter-flow .bp-operator-truth-strip.bp-operator-truth-strip--nested:not([hidden]) {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #e2e8f0;
}

.letter-flow .bp-operator-truth-strip[hidden] {
  display: none !important;
}

.letter-flow .bp-letter-honesty-note {
  font-size: 13px;
  line-height: 1.45;
  margin: 0 0 10px;
}

/* Post-analysis operator acknowledgement (letter workspace only) */
.letter-flow .bp-post-analysis-ack {
  margin: 16px 0 14px;
  padding: 12px 14px;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: #fafbfc;
}

.letter-flow .bp-post-analysis-ack[hidden] {
  display: none !important;
}

.letter-flow .bp-post-analysis-ack__fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}

.letter-flow .bp-post-analysis-ack__legend {
  padding: 0;
  margin: 0 0 10px;
  font-size: 14px;
  font-weight: 600;
  color: #0f172a;
}

.letter-flow .bp-brief-outcome-options {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.letter-flow .bp-brief-outcome-option {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 8px 10px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  cursor: pointer;
  font-size: 14px;
  line-height: 1.4;
  color: #1e293b;
  background: #fff;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.letter-flow .bp-brief-outcome-option input {
  margin-top: 3px;
  flex-shrink: 0;
}

.letter-flow .bp-brief-outcome-option:has(input:checked) {
  border-color: #0a58ca;
  background: #eff6ff;
  font-weight: 600;
}

.letter-flow .bp-brief-outcome-option--suggested {
  border-color: #38bdf8;
  box-shadow: 0 0 0 1px rgba(56, 189, 248, 0.35);
}

.letter-flow .bp-brief-outcome-warning {
  margin: 10px 0 0;
  font-size: 13px;
  font-weight: 600;
  color: #b45309;
}

.letter-flow .bp-post-analysis-ack__hint {
  margin: 0 0 12px;
  font-size: 12px;
  line-height: 1.45;
  max-width: 40rem;
}

/* Post-analysis: optional mail handoff (distinct from session end) */
.letter-flow .bp-letter-handoff {
  margin: 18px 0 0;
  padding: 14px 14px 4px;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: #fff;
}

.letter-flow .bp-letter-handoff__heading {
  margin: 0 0 10px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.35;
  color: #0f172a;
}

.letter-flow .bp-letter-handoff .bp-letter-honesty-note {
  margin-top: 6px;
}

.letter-flow .bp-letter-handoff .field {
  margin-top: 12px;
}

/* Letter → cabinet return semantics (result footer) */
.letter-flow .bp-letter-closure-cue {
  margin: 14px 0 0;
  font-size: 13px;
  line-height: 1.45;
  max-width: 42rem;
}

.letter-flow .actions--draft .bp-letter-closure-cue {
  align-self: center;
  max-width: 350px;
  text-align: center;
  margin-top: 16px;
  padding-bottom: 2px;
}

.letter-flow .bp-letter-cabinet-link {
  font-weight: 600;
  text-underline-offset: 2px;
}

.letter-flow .bp-letter-finish-semantics {
  align-self: center;
  width: 100%;
  max-width: 350px;
  margin: 10px 0 0;
  font-size: 12px;
  line-height: 1.45;
  text-align: center;
}

/* ===== Home hero: aggregate processed-letters stat chip (passive/neutral — not a button) ===== */
.home-hero__stats{
  display:inline-flex;
  flex-direction:column;
  align-items:center;
  gap:.12rem;
  margin:.65rem auto 0;
  padding:.32rem .8rem;
  border-radius:12px;
  background:color-mix(in srgb, var(--muted) 9%, #fff);
  border:1px solid color-mix(in srgb, var(--muted) 12%, transparent);
  line-height:1.15;
  cursor:default;
}
.home-hero__stats-cap{
  display:inline-flex;
  align-items:center;
  gap:.28rem;
  font-size:.67rem;
  font-weight:600;
  letter-spacing:.2px;
  color:var(--muted);
}
.home-hero__stats-cap svg{ flex:0 0 auto; color:var(--brand); }
.home-hero__stats-nums{
  display:inline-flex;
  align-items:baseline;
  gap:.26rem;
  font-size:.76rem;
  color:var(--muted);
}
.home-hero__stat-num{ font-weight:700; color:color-mix(in srgb, var(--text) 76%, var(--muted)); font-variant-numeric:tabular-nums; }
.home-hero__stat-label{ color:var(--muted); font-weight:500; }
.home-hero__stat-sep{ color:var(--muted); opacity:.6; margin:0 .04rem; }


/* ===== Sozheim+ wordmark — self-hosted, kein Google-CDN (keine Drittlanduebermittlung) ===== */
@font-face{font-family:'Sora Logo';src:url('data:font/woff2;base64,d09GMgABAAAAAAQ8AA8AAAAAB8gAAAPkAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGiIbIBwqBmA/U1RBVCoAZBEICoVYhHEBNgIkAyQLFAAEIAWDOAcgG0gGCJ4FORnaK/EqluiL8U3RJ9dKPDxv19e5r+qzeiArG6fjpUJE64hOjXB6aq3tuzoue4h44kInWwmQICSmExmy2tmuxEpmqmDjf7z2/Q/AzXn+L6e3aluB3fvYAI4ST2TMiT+bIGMBBxQfRmMvzCxQTkWdZVIdRYUBP992EigBQqgWmUV4a6BWa0qYyVPrfYAsh7IAR3ZlhqXG3L1hZw2I6VGQp9lpOQLp8pwPzKISa3ljvIF0UP718QTwopej7O37n/wtDY1BUtP0NdrD3QePxtmtYY9tgzvuaskVFVeQSUImWHDiY3jzAfWx4dBLzzzEqnVHZQYd/rB7wT133HTD9YI7IaOservUgIaAEn4jxsZVueQS1/SKJIkB3UX4vNSrKRuf199w+/nnUZynz4or+2ZceEunYv+F/SIZPZ+pvcBv117255w/U6a858Hz/amn8/NwVadQKeqM1vXv88z4VGw+K65kq+KhRFFRpNoMLfSAP7twSXliSOuj85VRWHr5lbhgxRV1XiwrH9tnQCdXV5XvKpyfuTT46dIrX3yRyB3krqa+llHLsiJtjDqK2MbahQ7+iM3RoyvDwobTN2OmrBTQNv9P7RD1FxRslSnjzBP+3V59ev94MTO3F2z39iMZWELbvnG9d8/j59Ydub3vORVHhqRHM4USvBkh07AIXfm2dtbPC2rn8s15Z25orx47KXs/llx+enCbylvfvv/t54Z8qmbG7vP9XTv/0qRF0AFaX195pvlCy2Y3liauWXd+FEQnDX7qPyiZDUYB0g5t9/mL27/Yvuy+x06NBrFYhjWaEdBqt/ZZu7DHWjecJI5bGDavdXVdK3QsClcDguikQXG3+27IuKAp6DUsrzpqTeNsUOCZPFdvrtoLhbF8Dk1zYUHQlBNyalhxz1ew6+oer75etHs847ih7vUgubUi+Fr/+8nf+76y/9v97HtpE+rXSDW7Hug+VG9VdcNdAEAgceyFw7snWaP/q86yH+GbfNuxZHZVs8/LJ+//l/fKvkalJFv8ZIatFLKsBozBKTXZekPpEXRLu9nSRcyLKRTZx+alJ3HWQqH4i9xYjdWIpiHuFcokqvdBOJHX4AFAILR0B5K6XgaZ/l6rc9ZQEdJ+kEpu1BcIStHz+xXqx1A56zYc2oJYBO1Q83LziFDrA81T61m3ZZpa25Z1S+bNKpkZu3ZADt02mfeatGPDtigXl0VIO2vXDKdZ61a5bO8cdDgAuQa6UL9mh+X8T/TMW4XIWrdiTte8RbtWTNvi5eQeDYppamkqiO0i2YEMqK7bhJxYpd6nWBUZ1D6r/IwLZyCrvAYCAA==') format('woff2');font-weight:600;font-style:normal;font-display:swap;}
.brand{font-family:'Sora Logo','Segoe UI',system-ui,-apple-system,sans-serif !important;font-weight:600 !important;}
.brandmark{display:inline-flex;align-items:baseline;letter-spacing:.015em;}
.brandmark .bl{display:inline-block;line-height:1;}
.brandmark .brand-plus{font-weight:600;display:inline-block;transform:translateY(-.30em);}

/* ===== Sozheim+ blob language button (fingerprint + code) ===== */
.app-header #lang-btn.lang-btn{position:relative !important;width:42px !important;height:42px !important;min-width:0 !important;max-width:none !important;aspect-ratio:1/1 !important;flex:0 0 auto !important;gap:0 !important;padding:0 !important;display:grid !important;place-items:center !important;overflow:hidden !important;border-radius:70% 30% 30% 70% / 70% 70% 30% 30% !important;border:1.5px solid rgba(255,255,255,.5) !important;background:rgba(255,255,255,.14) !important;box-shadow:0 2px 7px rgba(0,0,0,.2), inset 0 1px 0 rgba(255,255,255,.16) !important;}
.app-header #lang-btn.lang-btn::after{content:none !important;display:none !important;}
.app-header #lang-btn.lang-btn::before{content:"" !important;position:absolute;inset:-8%;background:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNDAgMTQwIiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmZmZmYiIHN0cm9rZS13aWR0aD0iMS43IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik03My44IDU2LjcgNzUuMSA1Ny4xIDc2LjQgNTcuNiA3Ny42IDU4LjMgNzguOCA1OS4xIDc5LjggNjAuMCA4MC43IDYxLjAgODEuNiA2Mi4yIDgyLjMgNjMuNCA4Mi45IDY0LjYgODMuNCA2NS45IDgzLjcgNjcuMiA4My45IDY4LjYgODQuMCA3MC4wIDg0LjAgNzEuMyA4My44IDcyLjcgODMuNiA3NC4xIDgzLjEgNzUuNCA4Mi42IDc2LjYgODEuOSA3Ny44IDgxLjEgNzkuMCA4MC4yIDgwLjAgNzkuMSA4MC45IDc4LjAgODEuNyA3Ni44IDgyLjQgNzUuNiA4My4wIDc0LjMgODMuNCA3My4wIDgzLjcgNzEuNyA4My45IDcwLjMgODQuMCA2OS4wIDg0LjAgNjcuNiA4My44IDY2LjMgODMuNSA2NS4wIDgzLjIgNjMuOCA4Mi43IDYyLjUgODIuMSA2MS4zIDgxLjQgNjAuMiA4MC41IDU5LjIgNzkuNiA1OC4zIDc4LjUgNTcuNSA3Ny40IDU2LjggNzYuMSA1Ni4zIDc0LjggNTUuOSA3My41IDU1LjcgNzIuMSA1NS42IDcwLjYgNTUuOCA2OS4yIDU2LjAgNjcuOSA1Ni40IDY2LjUgNTcuMCA2NS4zIDU3LjYgNjQuMSA1OC40IDYyLjkgNTkuMiA2MS45IDYwLjEgNjAuOSA2MS4xIDYwLjAgNjIuMiA1OS4yIDYzLjMgNTguNCA2NC41IDU3LjggNjUuNyA1Ny4zIDY3LjAgNTYuOCA2OC4zIDU2LjUgNjkuNyA1Ni40IDcxLjAgNTYuMyA3Mi40IDU2LjQgNzMuOCA1Ni43Ii8+PHBhdGggZD0iTTUzLjkgNjQuNSA1NC41IDYzLjIgNTUuMiA2Mi4wIDU1LjkgNjAuOSA1Ni44IDU5LjggNTcuNyA1OC44IDU4LjcgNTcuOSA1OS43IDU3LjAgNjAuOCA1Ni4yIDYyLjAgNTUuNSA2My4yIDU0LjggNjQuNCA1NC4zIDY1LjcgNTMuOCA2Ny4wIDUzLjQgNjguNCA1My4xIDY5LjggNTMuMCA3MS4yIDUyLjkgNzIuNSA1My4wIDczLjkgNTMuMiA3NS4zIDUzLjUgNzYuNyA1My45IDc4LjAgNTQuNSA3OS4yIDU1LjEgODAuNCA1NS45IDgxLjUgNTYuOCA4Mi41IDU3LjcgODMuNSA1OC44IDg0LjMgNTkuOSA4NS4xIDYxLjEgODUuOCA2Mi4zIDg2LjMgNjMuNiA4Ni44IDY0LjkgODcuMiA2Ni4zIDg3LjQgNjcuNiA4Ny42IDY5LjAgODcuNiA3MC40IDg3LjYgNzEuOCA4Ny40IDczLjIgODcuMSA3NC42IDg2LjcgNzUuOSA4Ni4yIDc3LjIgODUuNiA3OC41IDg0LjkgNzkuNyA4NC4xIDgwLjggODMuMiA4MS45IDgyLjIgODIuOSA4MS4xIDgzLjggODAuMCA4NC42IDc4LjggODUuMyA3Ny41IDg1LjkgNzYuMiA4Ni4zIDc0LjkgODYuNyA3My42IDg3LjAgNzIuMiA4Ny4yIDcwLjggODcuMyA2OS41IDg3LjMgNjguMSA4Ny4yIDY2LjggODcuMCA2NS40IDg2LjcgNjQuMSA4Ni4zIDYyLjggODUuOCA2MS42IDg1LjIgNjAuMyA4NC41IDU5LjIgODMuOCA1OC4xIDgyLjkiLz48cGF0aCBkPSJNNzUuOSA1MC40IDc3LjggNTAuOSA3OS43IDUxLjcgODEuNCA1Mi43IDgzLjEgNTMuOSA4NC42IDU1LjIgODYuMCA1Ni43IDg3LjIgNTguMyA4OC4yIDYwLjEgODkuMSA2MS45IDg5LjggNjMuOCA5MC4zIDY1LjcgOTAuNiA2Ny43IDkwLjggNjkuNyA5MC43IDcxLjcgOTAuNSA3My43IDkwLjEgNzUuNiA4OS41IDc3LjUgODguNyA3OS40IDg3LjcgODEuMSA4Ni41IDgyLjggODUuMiA4NC4zIDgzLjcgODUuNiA4Mi4xIDg2LjggODAuNCA4Ny44IDc4LjUgODguNiA3Ni43IDg5LjMgNzQuOCA4OS44IDcyLjggOTAuMSA3MC44IDkwLjIgNjguOSA5MC4xIDY2LjkgODkuOSA2NS4wIDg5LjUgNjMuMSA4OC45IDYxLjMgODguMiA1OS41IDg3LjMgNTcuOCA4Ni4zIDU2LjIgODUuMCA1NC43IDgzLjYgNTMuNCA4Mi4xIDUyLjIgODAuNCA1MS4zIDc4LjYgNTAuNSA3Ni43IDUwLjAgNzQuNyA0OS43IDcyLjcgNDkuNiA3MC43IDQ5LjcgNjguNiA1MC4xIDY2LjYgNTAuNiA2NC43IDUxLjQgNjIuOCA1Mi4zIDYxLjEgNTMuNCA1OS40IDU0LjYgNTcuOCA1NS45IDU2LjQgNTcuNCA1NS4xIDU4LjkgNTMuOSA2MC42IDUyLjggNjIuMyA1MS45IDY0LjEgNTEuMSA2Ni4wIDUwLjUgNjcuOSA1MC4xIDY5LjkgNDkuOSA3MS45IDQ5LjggNzMuOSA1MC4wIDc1LjkgNTAuNCIvPjxwYXRoIGQ9Ik03Ni44IDQ3LjAgNzkuMCA0Ny43IDgxLjIgNDguNyA4My4yIDQ5LjggODUuMSA1MS4yIDg2LjkgNTIuNyA4OC41IDU0LjQgODkuOSA1Ni4zIDkxLjEgNTguMyA5Mi4xIDYwLjQgOTIuOSA2Mi42IDkzLjUgNjQuOCA5My45IDY3LjEgOTQuMSA2OS41IDk0LjAgNzEuOCA5My44IDc0LjEgOTMuMyA3Ni40IDkyLjUgNzguNiA5MS42IDgwLjcgOTAuNCA4Mi43IDg5LjEgODQuNiA4Ny41IDg2LjQgODUuOCA4OC4wIDg0LjAgODkuMyA4Mi4wIDkwLjUgNzkuOSA5MS41IDc3LjcgOTIuMiA3NS41IDkyLjggNzMuMiA5My4xIDcwLjkgOTMuMyA2OC43IDkzLjIgNjYuNCA5My4wIDY0LjIgOTIuNSA2Mi4wIDkxLjggNTkuOCA5MS4wIDU3LjcgODkuOSA1NS44IDg4LjcgNTMuOSA4Ny4zIDUyLjIgODUuNyA1MC43IDgzLjkgNDkuNCA4MS45IDQ4LjIgNzkuOCA0Ny40IDc3LjYgNDYuNyA3NS4zIDQ2LjQgNzMuMCA0Ni4zIDcwLjYgNDYuNCA2OC4yIDQ2LjkgNjUuOSA0Ny41IDYzLjcgNDguNCA2MS41IDQ5LjQgNTkuNCA1MC43IDU3LjUgNTIuMSA1NS43IDUzLjYgNTQuMCA1NS4zIDUyLjUgNTcuMSA1MS4xIDU5LjAgNDkuOSA2MS4wIDQ4LjggNjMuMSA0Ny45IDY1LjMgNDcuMiA2Ny41IDQ2LjcgNjkuOCA0Ni40IDcyLjIgNDYuNCA3NC41IDQ2LjYgNzYuOCA0Ny4wIi8+PHBhdGggZD0iTTcyLjMgOTYuMyA3MC40IDk2LjQgNjguNSA5Ni4zIDY2LjcgOTYuMiA2NC44IDk1LjkgNjMuMCA5NS40IDYxLjIgOTQuOSA1OS40IDk0LjMgNTcuNiA5My41IDU2LjAgOTIuNiA1NC4zIDkxLjYgNTIuOCA5MC41IDUxLjMgODkuMyA0OS45IDg4LjAgNDguNiA4Ni41IDQ3LjQgODUuMCA0Ni4zIDgzLjQgNDUuNCA4MS43IDQ0LjYgNzkuOSA0My45IDc4LjEgNDMuNCA3Ni4yIDQzLjEgNzQuMiA0Mi45IDcyLjMgNDIuOCA3MC40IDQzLjAgNjguNCA0My4yIDY2LjUgNDMuNiA2NC42IDQ0LjIgNjIuOCA0NC44IDYxLjAgNDUuNiA1OS4yIDQ2LjUgNTcuNiA0Ny41IDU2LjAgNDguNiA1NC40IDQ5LjggNTMuMCA1MS4xIDUxLjYgNTIuNSA1MC4zIDUzLjkgNDkuMiA1NS40IDQ4LjAgNTcuMCA0Ny4wIDU4LjYgNDYuMSA2MC4zIDQ1LjMgNjIuMSA0NC42IDYzLjkgNDQuMCA2NS43IDQzLjYgNjcuNiA0My4yIDY5LjUgNDMuMCA3MS40IDQzLjAgNzMuMyA0My4wIDc1LjIgNDMuMiA3Ny4xIDQzLjYgNzguOSA0NC4xIDgwLjcgNDQuOCA4Mi41IDQ1LjUgODQuMiA0Ni41IDg1LjggNDcuNSA4Ny40IDQ4LjcgODguOCA0OS45IDkwLjEgNTEuMyA5MS40IDUyLjggOTIuNSA1NC4zIDkzLjUgNTYuMCA5NC40IDU3LjcgOTUuMiA1OS40IDk1LjkgNjEuMiA5Ni40IDYzLjEiLz48cGF0aCBkPSJNNzguMiA0MC41IDgxLjAgNDEuNCA4My44IDQyLjYgODYuNCA0NC4wIDg4LjggNDUuOCA5MS4xIDQ3LjcgOTMuMSA0OS45IDk0LjkgNTIuMyA5Ni40IDU0LjggOTcuNyA1Ny41IDk4LjggNjAuMyA5OS41IDYzLjIgMTAwLjAgNjYuMSAxMDAuMiA2OS4wIDEwMC4yIDcyLjAgOTkuOCA3NS4wIDk5LjIgNzcuOCA5OC4zIDgwLjcgOTcuMSA4My40IDk1LjYgODYuMCA5My45IDg4LjQgOTEuOSA5MC42IDg5LjcgOTIuNiA4Ny40IDk0LjQgODQuOCA5NS45IDgyLjIgOTcuMSA3OS40IDk4LjEgNzYuNiA5OC44IDczLjcgOTkuMyA3MC44IDk5LjQgNjcuOCA5OS40IDY1LjAgOTkuMCA2Mi4xIDk4LjQgNTkuMyA5Ny42IDU2LjYgOTYuNSA1My45IDk1LjIgNTEuNCA5My42IDQ5LjEgOTEuNyA0Ni45IDg5LjcgNDUuMCA4Ny40IDQzLjMgODQuOSA0MS45IDgyLjIgNDAuOCA3OS40IDQwLjAgNzYuNSAzOS41IDczLjUgMzkuNCA3MC41IDM5LjYgNjcuNSA0MC4xIDY0LjUgNDAuOSA2MS43IDQyLjAgNTguOSA0My4zIDU2LjMgNDQuOSA1My44IDQ2LjcgNTEuNSA0OC42IDQ5LjMgNTAuOCA0Ny40IDUzLjEgNDUuNiA1NS41IDQ0LjAgNTguMSA0Mi43IDYwLjggNDEuNSA2My41IDQwLjcgNjYuNCA0MC4wIDY5LjMgMzkuNyA3Mi4zIDM5LjcgNzUuMyAzOS45IDc4LjIgNDAuNSIvPjxwYXRoIGQ9Ik03OC44IDM3LjMgODIuMCAzOC4zIDg1LjAgMzkuNiA4Ny45IDQxLjIgOTAuNiA0My4xIDkzLjEgNDUuMyA5NS4zIDQ3LjcgOTcuMyA1MC40IDk5LjAgNTMuMiAxMDAuNSA1Ni4xIDEwMS42IDU5LjIgMTAyLjUgNjIuNCAxMDMuMCA2NS42IDEwMy4yIDY4LjkgMTAzLjIgNzIuMiAxMDIuOCA3NS41IDEwMi4xIDc4LjcgMTAxLjEgODEuOCA5OS43IDg0LjggOTguMSA4Ny42IDk2LjIgOTAuMyA5NC4wIDkyLjggOTEuNiA5NS4wIDg5LjAgOTcuMCA4Ni4yIDk4LjYgODMuMiAxMDAuMCA4MC4yIDEwMS4xIDc3LjAgMTAxLjkgNzMuOCAxMDIuNCA3MC42IDEwMi42IDY3LjQgMTAyLjUgNjQuMiAxMDIuMSA2MS4wIDEwMS41IDU3LjkgMTAwLjUgNTQuOSA5OS4zIDUyLjAgOTcuOCA0OS4yIDk2LjEgNDYuNiA5NC4wIDQ0LjIgOTEuNyA0Mi4xIDg5LjIgNDAuMiA4Ni40IDM4LjcgODMuNSAzNy40IDgwLjQgMzYuNiA3Ny4xIDM2LjAgNzMuOCAzNS45IDcwLjUgMzYuMSA2Ny4yIDM2LjcgNjMuOSAzNy41IDYwLjcgMzguNyA1Ny43IDQwLjIgNTQuOCA0MS45IDUyLjAgNDMuOSA0OS40IDQ2LjEgNDcuMSA0OC40IDQ0LjkgNTEuMCA0Mi45IDUzLjcgNDEuMiA1Ni41IDM5LjcgNTkuNSAzOC40IDYyLjYgMzcuNSA2NS44IDM2LjggNjkuMCAzNi40IDcyLjMgMzYuNCA3NS42IDM2LjcgNzguOCAzNy4zIi8+PHBhdGggZD0iTTc5LjUgMzQuMyA4Mi45IDM1LjQgODYuMyAzNi44IDg5LjQgMzguNiA5Mi40IDQwLjcgOTUuMSA0My4wIDk3LjYgNDUuNyA5OS43IDQ4LjYgMTAxLjYgNTEuNiAxMDMuMiA1NC45IDEwNC40IDU4LjMgMTA1LjQgNjEuNyAxMDYuMCA2NS4zIDEwNi4yIDY4LjkgMTA2LjIgNzIuNCAxMDUuNyA3Ni4wIDEwNS4wIDc5LjUgMTAzLjggODIuOSAxMDIuNCA4Ni4yIDEwMC42IDg5LjQgOTguNSA5Mi4zIDk2LjEgOTUuMCA5My41IDk3LjQgOTAuNiA5OS42IDg3LjYgMTAxLjQgODQuMyAxMDIuOSA4MS4wIDEwNC4xIDc3LjUgMTA1LjAgNzQuMCAxMDUuNSA3MC41IDEwNS43IDY3LjAgMTA1LjYgNjMuNSAxMDUuMiA2MC4wIDEwNC41IDU2LjYgMTAzLjUgNTMuMyAxMDIuMSA1MC4xIDEwMC41IDQ3LjEgOTguNiA0NC4zIDk2LjMgNDEuNyA5My44IDM5LjMgOTEuMCAzNy4zIDg4LjAgMzUuNiA4NC44IDM0LjIgODEuNCAzMy4zIDc3LjkgMzIuNyA3NC4yIDMyLjUgNzAuNiAzMi44IDY3LjAgMzMuNCA2My40IDM0LjMgNTkuOSAzNS42IDU2LjYgMzcuMiA1My40IDM5LjEgNTAuNCA0MS4zIDQ3LjUgNDMuNiA0NC45IDQ2LjIgNDIuNSA0OS4wIDQwLjQgNTIuMCAzOC41IDU1LjEgMzYuOCA1OC40IDM1LjUgNjEuOCAzNC40IDY1LjIgMzMuNyA2OC44IDMzLjMgNzIuNCAzMy4zIDc2LjAgMzMuNiA3OS41IDM0LjMiLz48cGF0aCBkPSJNODAuMyAzMS40IDg0LjAgMzIuNiA4Ny42IDM0LjEgOTEuMCAzNi4xIDk0LjIgMzguMyA5Ny4yIDQwLjkgOTkuOCA0My44IDEwMi4yIDQ2LjkgMTA0LjIgNTAuMiAxMDUuOSA1My43IDEwNy4zIDU3LjQgMTA4LjMgNjEuMSAxMDguOSA2NS4wIDEwOS4yIDY4LjkgMTA5LjEgNzIuOCAxMDguNyA3Ni42IDEwNy44IDgwLjQgMTA2LjYgODQuMSAxMDUuMSA4Ny43IDEwMy4xIDkxLjEgMTAwLjkgOTQuMiA5OC4zIDk3LjIgOTUuNCA5OS44IDkyLjMgMTAyLjEgODkuMCAxMDQuMSA4NS41IDEwNS44IDgxLjkgMTA3LjEgNzguMSAxMDguMCA3NC40IDEwOC42IDcwLjUgMTA4LjggNjYuNyAxMDguNyA2Mi45IDEwOC4zIDU5LjEgMTA3LjUgNTUuNSAxMDYuNCA1MS45IDEwNC45IDQ4LjQgMTAzLjIgNDUuMiAxMDEuMSA0Mi4xIDk4LjYgMzkuMyA5NS45IDM2LjggOTIuOSAzNC42IDg5LjYgMzIuNyA4Ni4xIDMxLjMgODIuNCAzMC4yIDc4LjYgMjkuNiA3NC43IDI5LjQgNzAuOCAyOS42IDY2LjggMzAuMyA2My4wIDMxLjMgNTkuMiAzMi43IDU1LjUgMzQuNSA1Mi4xIDM2LjUgNDguOCAzOC44IDQ1LjggNDEuNCA0Mi45IDQ0LjIgNDAuMyA0Ny4yIDM4LjAgNTAuNSAzNS45IDUzLjggMzQuMiA1Ny40IDMyLjcgNjEuMCAzMS42IDY0LjggMzAuOCA2OC43IDMwLjMgNzIuNSAzMC4zIDc2LjQgMzAuNyA4MC4zIDMxLjQiLz48cGF0aCBkPSJNODEuMiAyOC40IDg1LjMgMjkuNyA4OS4yIDMxLjMgOTIuOSAzMy40IDk2LjMgMzUuOSA5OS41IDM4LjcgMTAyLjQgNDEuOCAxMDUuMCA0NS4xIDEwNy4yIDQ4LjcgMTA5LjAgNTIuNSAxMTAuNSA1Ni41IDExMS42IDYwLjYgMTEyLjMgNjQuNyAxMTIuNiA2OC45IDExMi41IDczLjEgMTEyLjAgNzcuMyAxMTEuMSA4MS40IDEwOS44IDg1LjQgMTA4LjEgODkuMyAxMDYuMCA5My4wIDEwMy41IDk2LjQgMTAwLjggOTkuNiA5Ny43IDEwMi40IDk0LjMgMTA0LjkgOTAuNyAxMDcuMSA4Ni45IDEwOC45IDgzLjAgMTEwLjMgNzguOSAxMTEuMyA3NC44IDExMS45IDcwLjcgMTEyLjIgNjYuNSAxMTIuMSA2Mi40IDExMS42IDU4LjQgMTEwLjggNTQuNCAxMDkuNSA1MC41IDEwOC4wIDQ2LjggMTA2LjAgNDMuMiAxMDMuOCAzOS45IDEwMS4xIDM2LjkgOTguMiAzNC4yIDk0LjkgMzEuOCA5MS40IDI5LjggODcuNiAyOC4yIDgzLjYgMjcuMSA3OS41IDI2LjQgNzUuMiAyNi4yIDcxLjAgMjYuNSA2Ni43IDI3LjIgNjIuNSAyOC4zIDU4LjQgMjkuOCA1NC41IDMxLjcgNTAuOCAzMy45IDQ3LjIgMzYuNCA0My45IDM5LjIgNDAuOCA0Mi4yIDM4LjAgNDUuNSAzNS41IDQ5LjAgMzMuMyA1Mi42IDMxLjMgNTYuNSAyOS43IDYwLjQgMjguNSA2NC41IDI3LjcgNjguNyAyNy4yIDcyLjkgMjcuMiA3Ny4xIDI3LjYgODEuMiAyOC40Ii8+PHBhdGggZD0iTTY1LjIgMTE1LjMgNjEuOSAxMTQuOCA1OC42IDExNC4yIDU1LjUgMTEzLjMgNTIuMyAxMTIuMiA0OS4zIDExMC45IDQ2LjMgMTA5LjQgNDMuNCAxMDcuNyA0MC43IDEwNS44IDM4LjAgMTAzLjcgMzUuNiAxMDEuNCAzMy4zIDk4LjkgMzEuMiA5Ni4yIDI5LjMgOTMuNCAyNy43IDkwLjQgMjYuMyA4Ny4zIDI1LjEgODQuMSAyNC4yIDgwLjggMjMuNiA3Ny41IDIzLjMgNzQuMSAyMy4yIDcwLjcgMjMuNCA2Ny4zIDIzLjggNjMuOSAyNC42IDYwLjYgMjUuNSA1Ny40IDI2LjcgNTQuMyAyOC4xIDUxLjMgMjkuNyA0OC4zIDMxLjUgNDUuNSAzMy41IDQyLjkgMzUuNiA0MC40IDM3LjkgMzguMCA0MC4zIDM1LjggNDIuOSAzMy44IDQ1LjYgMzEuOSA0OC40IDMwLjIgNTEuNCAyOC43IDU0LjQgMjcuNCA1Ny41IDI2LjMgNjAuNyAyNS40IDY0LjAgMjQuNyA2Ny4zIDI0LjMgNzAuNiAyNC4xIDczLjkgMjQuMiA3Ny4zIDI0LjUgODAuNiAyNS4xIDgzLjkgMjUuOSA4Ny4wIDI3LjAgOTAuMSAyOC4zIDkzLjEgMjkuOSA5Ni4wIDMxLjcgOTguNyAzMy43IDEwMS4zIDM1LjkgMTAzLjYgMzguMyAxMDUuOCA0MC44IDEwNy44IDQzLjYgMTA5LjYgNDYuNCAxMTEuMiA0OS40IDExMi41IDUyLjQgMTEzLjcgNTUuNiAxMTQuNiA1OC44IDExNS4zIDYyLjEgMTE1LjcgNjUuNCAxMTYuMCA2OC44IDExNS45IDcyLjEiLz48cGF0aCBkPSJNODMuMyAyMi42IDg4LjAgMjQuMCA5Mi40IDI2LjAgOTYuNyAyOC4zIDEwMC43IDMxLjIgMTA0LjMgMzQuNCAxMDcuNiAzNy45IDExMC42IDQxLjggMTEzLjEgNDUuOSAxMTUuMiA1MC4zIDExNi45IDU0LjggMTE4LjIgNTkuNSAxMTkuMCA2NC4yIDExOS4zIDY5LjAgMTE5LjIgNzMuOSAxMTguNiA3OC43IDExNy42IDgzLjQgMTE2LjEgODguMCAxMTQuMSA5Mi40IDExMS43IDk2LjYgMTA4LjkgMTAwLjYgMTA1LjcgMTA0LjIgMTAyLjIgMTA3LjQgOTguMyAxMTAuMyA5NC4yIDExMi44IDg5LjkgMTE0LjkgODUuNCAxMTYuNSA4MC43IDExNy43IDc2LjAgMTE4LjQgNzEuMyAxMTguNyA2Ni41IDExOC42IDYxLjggMTE4LjAgNTcuMSAxMTcuMCA1Mi42IDExNS42IDQ4LjEgMTEzLjggNDMuOSAxMTEuNiAzOS44IDEwOS4wIDM2LjAgMTA2LjAgMzIuNSAxMDIuNiAyOS40IDk4LjggMjYuNyA5NC44IDI0LjQgOTAuNCAyMi42IDg1LjkgMjEuMyA4MS4xIDIwLjUgNzYuMyAyMC4zIDcxLjQgMjAuNiA2Ni41IDIxLjQgNjEuNyAyMi42IDU3LjAgMjQuNCA1Mi41IDI2LjUgNDguMiAyOS4wIDQ0LjEgMzEuOSA0MC4zIDM1LjEgMzYuOCAzOC42IDMzLjYgNDIuMyAzMC43IDQ2LjMgMjguMSA1MC41IDI1LjkgNTQuOSAyNC4xIDU5LjUgMjIuNyA2NC4yIDIxLjcgNjkuMCAyMS4yIDczLjggMjEuMiA3OC42IDIxLjYgODMuMyAyMi42Ii8+PHBhdGggZD0iTTg0LjQgMTkuNyA4OS4zIDIxLjIgOTQuMCAyMy4zIDk4LjUgMjUuOCAxMDIuOCAyOC44IDEwNi42IDMyLjIgMTEwLjIgMzYuMCAxMTMuMyA0MC4xIDExNi4wIDQ0LjUgMTE4LjIgNDkuMSAxMjAuMCA1My45IDEyMS40IDU4LjkgMTIyLjIgNjMuOSAxMjIuNiA2OS4wIDEyMi41IDc0LjIgMTIxLjkgNzkuMyAxMjAuOCA4NC4zIDExOS4yIDg5LjIgMTE3LjEgOTMuOSAxMTQuNSA5OC4zIDExMS42IDEwMi41IDEwOC4yIDEwNi40IDEwNC40IDEwOS45IDEwMC4zIDExMi45IDk1LjkgMTE1LjYgOTEuMyAxMTcuOCA4Ni41IDExOS41IDgxLjYgMTIwLjcgNzYuNiAxMjEuNSA3MS41IDEyMS44IDY2LjUgMTIxLjcgNjEuNSAxMjEuMSA1Ni41IDEyMC4xIDUxLjYgMTE4LjYgNDYuOSAxMTYuNyA0Mi40IDExNC4zIDM4LjEgMTExLjUgMzQuMSAxMDguMyAzMC40IDEwNC43IDI3LjAgMTAwLjcgMjQuMSA5Ni40IDIxLjcgOTEuOCAxOS44IDg2LjkgMTguNCA4MS45IDE3LjYgNzYuNyAxNy40IDcxLjUgMTcuNyA2Ni40IDE4LjUgNjEuMyAxOS44IDU2LjMgMjEuNyA1MS41IDI0LjAgNDYuOSAyNi42IDQyLjYgMjkuNyAzOC41IDMzLjEgMzQuOCAzNi44IDMxLjQgNDAuOCAyOC4zIDQ1LjAgMjUuNSA0OS41IDIzLjIgNTQuMiAyMS4zIDU5LjAgMTkuOCA2NC4wIDE4LjggNjkuMSAxOC4yIDc0LjIgMTguMiA3OS4zIDE4LjcgODQuNCAxOS43Ii8+PHBhdGggZD0iTTI5LjkgMTA5LjAgMjYuOSAxMDUuOCAyNC4yIDEwMi40IDIxLjcgOTguNyAxOS41IDk0LjkgMTcuNyA5MC45IDE2LjMgODYuNyAxNS4yIDgyLjUgMTQuNCA3OC4xIDE0LjEgNzMuNyAxNC4xIDY5LjMgMTQuNSA2NS4wIDE1LjMgNjAuNyAxNi40IDU2LjQgMTcuOCA1Mi4zIDE5LjUgNDguNCAyMS41IDQ0LjYgMjMuOCA0MC45IDI2LjQgMzcuNSAyOS4yIDM0LjIgMzIuMSAzMS4yIDM1LjMgMjguMyAzOC43IDI1LjcgNDIuMyAyMy40IDQ2LjAgMjEuMyA0OS45IDE5LjUgNTMuOCAxNy45IDU3LjkgMTYuNyA2Mi4xIDE1LjcgNjYuNCAxNS4xIDcwLjcgMTQuOCA3NS4wIDE0LjkgNzkuNCAxNS4zIDgzLjcgMTYuMCA4Ny45IDE3LjIgOTIuMCAxOC42IDk2LjAgMjAuNCA5OS44IDIyLjUgMTAzLjQgMjUuMCAxMDYuOCAyNy43IDExMC4wIDMwLjcgMTEyLjkgMzMuOSAxMTUuNiAzNy40IDExOC4wIDQxLjAgMTIwLjAgNDQuOSAxMjEuOCA0OC44IDEyMy4zIDUyLjkgMTI0LjUgNTcuMSAxMjUuMyA2MS4zIDEyNS44IDY1LjYgMTI2LjAgNzAuMCAxMjUuOSA3NC4zIDEyNS40IDc4LjYgMTI0LjYgODIuOSAxMjMuNSA4Ny4xIDEyMi4xIDkxLjIgMTIwLjMgOTUuMSAxMTguMiA5OS4wIDExNS44IDEwMi42IDExMy4xIDEwNi4wIDExMC4yIDEwOS4yIDEwNy4wIDExMi4xIDEwMy42IDExNC44IDEwMC4wIDExNy4yIDk2LjIgMTE5LjIiLz48cGF0aCBkPSJNODYuMSAxMy41IDkxLjYgMTUuMiA5Ni45IDE3LjUgMTAyLjAgMjAuMyAxMDYuNyAyMy43IDExMS4xIDI3LjUgMTE1LjAgMzEuNyAxMTguNSAzNi4zIDEyMS42IDQxLjMgMTI0LjEgNDYuNSAxMjYuMSA1MS45IDEyNy42IDU3LjQgMTI4LjYgNjMuMSAxMjkuMCA2OC44IDEyOC45IDc0LjYgMTI4LjIgODAuMyAxMjYuOSA4NS45IDEyNS4xIDkxLjQgMTIyLjggOTYuNyAxMjAuMCAxMDEuNyAxMTYuNiAxMDYuNCAxMTIuOCAxMTAuNyAxMDguNiAxMTQuNiAxMDQuMCAxMTguMSA5OS4xIDEyMS4wIDkzLjkgMTIzLjUgODguNSAxMjUuNCA4My4wIDEyNi44IDc3LjQgMTI3LjcgNzEuNyAxMjguMSA2Ni4wIDEyNy45IDYwLjQgMTI3LjMgNTQuOCAxMjYuMSA0OS40IDEyNC40IDQ0LjEgMTIyLjMgMzkuMCAxMTkuNiAzNC4yIDExNi41IDI5LjcgMTEyLjkgMjUuNSAxMDguOCAyMS44IDEwNC4zIDE4LjYgOTkuNSAxNS45IDk0LjMgMTMuNyA4OC45IDEyLjIgODMuMiAxMS4yIDc3LjUgMTEuMCA3MS42IDExLjMgNjUuOCAxMi4yIDYwLjEgMTMuNyA1NC41IDE1LjggNDkuMSAxOC4zIDQ0LjAgMjEuMyAzOS4xIDI0LjggMzQuNiAyOC42IDMwLjQgMzIuNyAyNi41IDM3LjIgMjMuMSA0Mi4wIDIwLjAgNDcuMCAxNy40IDUyLjIgMTUuMiA1Ny43IDEzLjYgNjMuMyAxMi40IDY5LjAgMTEuOCA3NC43IDExLjggODAuNCAxMi4zIDg2LjEgMTMuNSIvPjwvc3ZnPg==') center/cover no-repeat;opacity:.55;pointer-events:none;}
.app-header #lang-btn.lang-btn:hover,.app-header #lang-btn.lang-btn[aria-expanded="true"]{background:rgba(255,255,255,.26) !important;border-color:rgba(255,255,255,.82) !important;}
.app-header #lang-btn.lang-btn #lang-code{position:relative;z-index:1;font-weight:600;font-size:14px;color:#fff;letter-spacing:.02em;text-shadow:0 1px 3px rgba(6,20,45,.55);}

/* ===== Sozheim+ convex partial-print (v2) — supersedes v1 blob block ===== */
.app-header #lang-btn.lang-btn{box-shadow:0 2px 7px rgba(0,0,0,.22), inset 0 2px 2px rgba(255,255,255,.30), inset 0 -3px 5px rgba(3,14,38,.22) !important;}
.app-header #lang-btn.lang-btn::after{content:"" !important;display:block !important;position:absolute !important;inset:0 !important;border:0 !important;transform:none !important;border-radius:inherit !important;background:radial-gradient(120% 100% at 33% 24%, rgba(255,255,255,.30), rgba(255,255,255,0) 54%) !important;pointer-events:none !important;z-index:1 !important;}
.app-header #lang-btn.lang-btn::before{content:"" !important;position:absolute !important;inset:-8% !important;background:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNDAgMTQwIiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmZmZmYiIHN0cm9rZS13aWR0aD0iMS43IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0gNTcuMCA4Ni44IEwgNTcuNCA4Ni4wIEwgNTcuNyA4NS4zIEwgNTguMiA4NC41IEwgNTguNiA4My45IEwgNTkuMSA4My4yIEwgNTkuNyA4Mi42IEwgNjAuMiA4Mi4wIEwgNjAuOSA4MS40IEwgNjEuNSA4MC45IEwgNjIuMiA4MC40IEwgNjIuOSA3OS45IEwgNjMuNiA3OS41IEwgNjQuNCA3OS4yIEwgNjUuMSA3OC45IEwgNjUuOSA3OC42IEwgNjYuNyA3OC40IEwgNjcuNSA3OC4yIEwgNjguMyA3OC4xIEwgNjkuMiA3OC4wIEwgNzAuMCA3OC4wIEwgNzAuOCA3OC4wIEwgNzEuNyA3OC4xIEwgNzIuNSA3OC4yIEwgNzMuMyA3OC40IEwgNzQuMSA3OC42IEwgNzQuOSA3OC45IEwgNzUuNiA3OS4yIEwgNzYuNCA3OS41IEwgNzcuMSA3OS45IEwgNzcuOCA4MC40IEwgNzguNSA4MC45IEwgNzkuMSA4MS40IEwgNzkuOCA4Mi4wIEwgODAuMyA4Mi42IEwgODAuOSA4My4yIEwgODEuNCA4My45IEwgODEuOCA4NC41IEwgODIuMyA4NS4zIEwgODIuNiA4Ni4wIEwgODMuMCA4Ni44Ii8+PHBhdGggZD0iTSA0OC43IDgzLjQgTCA0OS4yIDgyLjEgTCA0OS44IDgwLjkgTCA1MC41IDc5LjcgTCA1MS4zIDc4LjYgTCA1Mi4xIDc3LjUgTCA1My4wIDc2LjUgTCA1NC4wIDc1LjUgTCA1NS4wIDc0LjYgTCA1Ni4wIDczLjcgTCA1Ny4xIDcyLjkgTCA1OC4zIDcyLjIgTCA1OS41IDcxLjUgTCA2MC43IDcxLjAgTCA2Mi4wIDcwLjQgTCA2My4zIDcwLjAgTCA2NC42IDY5LjYgTCA2NS45IDY5LjQgTCA2Ny4zIDY5LjIgTCA2OC42IDY5LjAgTCA3MC4wIDY5LjAgTCA3MS40IDY5LjAgTCA3Mi43IDY5LjIgTCA3NC4xIDY5LjQgTCA3NS40IDY5LjYgTCA3Ni43IDcwLjAgTCA3OC4wIDcwLjQgTCA3OS4zIDcxLjAgTCA4MC41IDcxLjUgTCA4MS43IDcyLjIgTCA4Mi45IDcyLjkgTCA4NC4wIDczLjcgTCA4NS4wIDc0LjYgTCA4Ni4wIDc1LjUgTCA4Ny4wIDc2LjUgTCA4Ny45IDc3LjUgTCA4OC43IDc4LjYgTCA4OS41IDc5LjcgTCA5MC4yIDgwLjkgTCA5MC44IDgyLjEgTCA5MS4zIDgzLjQiLz48cGF0aCBkPSJNIDQwLjMgODAuMCBMIDQxLjEgNzguMyBMIDQyLjAgNzYuNiBMIDQyLjkgNzQuOSBMIDQ0LjAgNzMuNCBMIDQ1LjEgNzEuOSBMIDQ2LjQgNzAuNCBMIDQ3LjcgNjkuMSBMIDQ5LjEgNjcuOCBMIDUwLjYgNjYuNiBMIDUyLjEgNjUuNSBMIDUzLjcgNjQuNSBMIDU1LjQgNjMuNSBMIDU3LjEgNjIuNyBMIDU4LjggNjIuMCBMIDYwLjYgNjEuNCBMIDYyLjUgNjAuOSBMIDY0LjMgNjAuNSBMIDY2LjIgNjAuMiBMIDY4LjEgNjAuMSBMIDcwLjAgNjAuMCBMIDcxLjkgNjAuMSBMIDczLjggNjAuMiBMIDc1LjcgNjAuNSBMIDc3LjUgNjAuOSBMIDc5LjQgNjEuNCBMIDgxLjIgNjIuMCBMIDgyLjkgNjIuNyBMIDg0LjYgNjMuNSBMIDg2LjMgNjQuNSBMIDg3LjkgNjUuNSBMIDg5LjQgNjYuNiBMIDkwLjkgNjcuOCBMIDkyLjMgNjkuMSBMIDkzLjYgNzAuNCBMIDk0LjkgNzEuOSBMIDk2LjAgNzMuNCBMIDk3LjEgNzQuOSBMIDk4LjAgNzYuNiBMIDk4LjkgNzguMyBMIDk5LjcgODAuMCIvPjxwYXRoIGQ9Ik0gMzIuMCA3Ni42IEwgMzMuMCA3NC40IEwgMzQuMSA3Mi4yIEwgMzUuMyA3MC4yIEwgMzYuNyA2OC4xIEwgMzguMSA2Ni4yIEwgMzkuNyA2NC40IEwgNDEuNCA2Mi42IEwgNDMuMiA2MS4wIEwgNDUuMSA1OS40IEwgNDcuMSA1OC4wIEwgNDkuMSA1Ni43IEwgNTEuMyA1NS41IEwgNTMuNSA1NC41IEwgNTUuNyA1My42IEwgNTguMCA1Mi44IEwgNjAuNCA1Mi4xIEwgNjIuNyA1MS42IEwgNjUuMSA1MS4zIEwgNjcuNiA1MS4xIEwgNzAuMCA1MS4wIEwgNzIuNCA1MS4xIEwgNzQuOSA1MS4zIEwgNzcuMyA1MS42IEwgNzkuNiA1Mi4xIEwgODIuMCA1Mi44IEwgODQuMyA1My42IEwgODYuNSA1NC41IEwgODguNyA1NS41IEwgOTAuOSA1Ni43IEwgOTIuOSA1OC4wIEwgOTQuOSA1OS40IEwgOTYuOCA2MS4wIEwgOTguNiA2Mi42IEwgMTAwLjMgNjQuNCBMIDEwMS45IDY2LjIgTCAxMDMuMyA2OC4xIEwgMTA0LjcgNzAuMiBMIDEwNS45IDcyLjIgTCAxMDcuMCA3NC40IEwgMTA4LjAgNzYuNiIvPjxwYXRoIGQ9Ik0gMjIuNiA3My4zIEwgMjQuOCA3MC42IEwgMjYuMiA2Ny45IEwgMjcuNyA2NS40IEwgMjkuMyA2Mi45IEwgMzEuMSA2MC41IEwgMzMuMSA1OC4zIEwgMzUuMSA1Ni4yIEwgMzcuMyA1NC4yIEwgMzkuNiA1Mi4zIEwgNDIuMCA1MC41IEwgNDQuNSA0OS4wIEwgNDcuMSA0Ny41IEwgNDkuOCA0Ni4zIEwgNTIuNiA0NS4xIEwgNTUuNCA0NC4yIEwgNTguMiA0My40IEwgNjEuMSA0Mi44IEwgNjQuMSA0Mi40IEwgNjcuMCA0Mi4xIEwgNzAuMCA0Mi4wIEwgNzMuMCA0Mi4xIEwgNzUuOSA0Mi40IEwgNzguOSA0Mi44IEwgODEuOCA0My40IEwgODQuNiA0NC4yIEwgODcuNCA0NS4xIEwgOTAuMiA0Ni4zIEwgOTIuOSA0Ny41IEwgOTUuNSA0OS4wIEwgOTguMCA1MC41IEwgMTAwLjQgNTIuMyBMIDEwMi43IDU0LjIgTCAxMDQuOSA1Ni4yIEwgMTA2LjkgNTguMyBMIDEwOC45IDYwLjUgTCAxMTAuNyA2Mi45IEwgMTEyLjMgNjUuNCBMIDExMy44IDY3LjkgTCAxMTUuMiA3MC42IEwgMTE2LjQgNzMuMyIvPjxwYXRoIGQ9Ik0gMTUuMyA2OS45IEwgMTYuNyA2Ni43IEwgMTguMyA2My42IEwgMjAuMSA2MC42IEwgMjIuMCA1Ny43IEwgMjQuMSA1NC45IEwgMjYuNCA1Mi4yIEwgMjguOSA0OS43IEwgMzEuNCA0Ny4zIEwgMzQuMiA0NS4xIEwgMzcuMCA0My4xIEwgNDAuMCA0MS4yIEwgNDMuMCAzOS41IEwgNDYuMiAzOC4wIEwgNDkuNCAzNi43IEwgNTIuOCAzNS42IEwgNTYuMSAzNC43IEwgNTkuNiAzMy45IEwgNjMuMCAzMy40IEwgNjYuNSAzMy4xIEwgNzAuMCAzMy4wIEwgNzMuNSAzMy4xIEwgNzcuMCAzMy40IEwgODAuNCAzMy45IEwgODMuOSAzNC43IEwgODcuMiAzNS42IEwgOTAuNiAzNi43IEwgOTMuOCAzOC4wIEwgOTcuMCAzOS41IEwgMTAwLjAgNDEuMiBMIDEwMy4wIDQzLjEgTCAxMDUuOCA0NS4xIEwgMTA4LjYgNDcuMyBMIDExMS4xIDQ5LjcgTCAxMTMuNiA1Mi4yIEwgMTE1LjkgNTQuOSBMIDExOC4wIDU3LjcgTCAxMTkuOSA2MC42IEwgMTIxLjcgNjMuNiBMIDEyMy4zIDY2LjcgTCAxMjQuNyA2OS45Ii8+PC9zdmc+') center/cover no-repeat !important;opacity:.6 !important;pointer-events:none !important;filter:drop-shadow(0 .5px .4px rgba(3,14,38,.5)) !important;z-index:0 !important;}
.app-header #lang-btn.lang-btn #lang-code{position:relative !important;z-index:2 !important;}

/* ===== Sozheim+ partial-print TILT toward wordmark (T2) — supersedes v2 fingerprint ===== */
.app-header #lang-btn.lang-btn::before{background:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNDAgMTQwIiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmZmZmYiIHN0cm9rZS13aWR0aD0iMS43IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0gNzUuNiAxMDEuMCBMIDc1LjIgMTAwLjEgTCA3NC45IDk5LjIgTCA3NC42IDk4LjMgTCA3NC40IDk3LjQgTCA3NC4yIDk2LjUgTCA3NC4xIDk1LjUgTCA3NC4wIDk0LjYgTCA3NC4wIDkzLjYgTCA3NC4xIDkyLjYgTCA3NC4yIDkxLjcgTCA3NC4zIDkwLjggTCA3NC42IDg5LjggTCA3NC44IDg4LjkgTCA3NS4yIDg4LjAgTCA3NS42IDg3LjEgTCA3Ni4wIDg2LjMgTCA3Ni41IDg1LjUgTCA3Ny4wIDg0LjcgTCA3Ny42IDgzLjkgTCA3OC4yIDgzLjIgTCA3OC45IDgyLjUgTCA3OS42IDgxLjggTCA4MC4zIDgxLjIgTCA4MS4xIDgwLjcgTCA4MS45IDgwLjIgTCA4Mi44IDc5LjcgTCA4My42IDc5LjMgTCA4NC41IDc5LjAgTCA4NS40IDc4LjcgTCA4Ni40IDc4LjQgTCA4Ny4zIDc4LjIgTCA4OC4yIDc4LjEgTCA4OS4yIDc4LjAgTCA5MC4yIDc4LjAgTCA5MS4xIDc4LjAgTCA5Mi4xIDc4LjEgTCA5My4wIDc4LjMgTCA5My45IDc4LjUgTCA5NC45IDc4LjggTCA5NS44IDc5LjEgTCA5Ni43IDc5LjQgTCA5Ny41IDc5LjkiLz48cGF0aCBkPSJNIDY3LjUgMTA1LjAgTCA2Ni45IDEwMy42IEwgNjYuNCAxMDIuMiBMIDY1LjkgMTAwLjggTCA2NS42IDk5LjMgTCA2NS4zIDk3LjggTCA2NS4xIDk2LjQgTCA2NS4wIDk0LjkgTCA2NS4wIDkzLjQgTCA2NS4xIDkxLjkgTCA2NS4zIDkwLjQgTCA2NS41IDg4LjkgTCA2NS45IDg3LjUgTCA2Ni4zIDg2LjAgTCA2Ni44IDg0LjYgTCA2Ny40IDgzLjMgTCA2OC4xIDgxLjkgTCA2OC45IDgwLjYgTCA2OS43IDc5LjQgTCA3MC42IDc4LjIgTCA3MS42IDc3LjEgTCA3Mi42IDc2LjAgTCA3My43IDc1LjAgTCA3NC45IDc0LjEgTCA3Ni4xIDczLjIgTCA3Ny40IDcyLjQgTCA3OC43IDcxLjcgTCA4MC4xIDcxLjEgTCA4MS40IDcwLjUgTCA4Mi45IDcwLjAgTCA4NC4zIDY5LjcgTCA4NS44IDY5LjQgTCA4Ny4zIDY5LjIgTCA4OC44IDY5LjAgTCA5MC4yIDY5LjAgTCA5MS43IDY5LjEgTCA5My4yIDY5LjIgTCA5NC43IDY5LjQgTCA5Ni4yIDY5LjggTCA5Ny42IDcwLjIgTCA5OS4wIDcwLjcgTCAxMDAuNCA3MS4zIEwgMTAxLjcgNzEuOSIvPjxwYXRoIGQ9Ik0gNTkuNCAxMDguOSBMIDU4LjYgMTA3LjEgTCA1Ny45IDEwNS4xIEwgNTcuMyAxMDMuMiBMIDU2LjggMTAxLjIgTCA1Ni40IDk5LjIgTCA1Ni4yIDk3LjIgTCA1Ni4wIDk1LjIgTCA1Ni4wIDkzLjIgTCA1Ni4xIDkxLjEgTCA1Ni40IDg5LjEgTCA1Ni43IDg3LjEgTCA1Ny4yIDg1LjEgTCA1Ny44IDgzLjIgTCA1OC41IDgxLjMgTCA1OS4zIDc5LjQgTCA2MC4yIDc3LjYgTCA2MS4zIDc1LjggTCA2Mi40IDc0LjIgTCA2My42IDcyLjUgTCA2NS4wIDcxLjAgTCA2Ni40IDY5LjUgTCA2Ny45IDY4LjIgTCA2OS41IDY2LjkgTCA3MS4xIDY1LjcgTCA3Mi45IDY0LjYgTCA3NC42IDYzLjcgTCA3Ni41IDYyLjggTCA3OC40IDYyLjEgTCA4MC4zIDYxLjQgTCA4Mi4zIDYwLjkgTCA4NC4zIDYwLjUgTCA4Ni4zIDYwLjIgTCA4OC4zIDYwLjAgTCA5MC4zIDYwLjAgTCA5Mi40IDYwLjEgTCA5NC40IDYwLjMgTCA5Ni40IDYwLjYgTCA5OC40IDYxLjEgTCAxMDAuMyA2MS42IEwgMTAyLjMgNjIuMyBMIDEwNC4xIDYzLjEgTCAxMDYuMCA2NC4wIi8+PHBhdGggZD0iTSA1MS40IDExMi44IEwgNTAuMyAxMTAuNSBMIDQ5LjQgMTA4LjEgTCA0OC42IDEwNS42IEwgNDguMCAxMDMuMSBMIDQ3LjUgMTAwLjYgTCA0Ny4yIDk4LjEgTCA0Ny4wIDk1LjUgTCA0Ny4wIDkyLjkgTCA0Ny4yIDkwLjQgTCA0Ny40IDg3LjggTCA0Ny45IDg1LjMgTCA0OC41IDgyLjggTCA0OS4yIDgwLjMgTCA1MC4xIDc3LjkgTCA1MS4yIDc1LjUgTCA1Mi4zIDczLjIgTCA1My42IDcxLjAgTCA1NS4xIDY4LjkgTCA1Ni43IDY2LjkgTCA1OC4zIDY0LjkgTCA2MC4xIDYzLjEgTCA2Mi4wIDYxLjMgTCA2NC4wIDU5LjcgTCA2Ni4xIDU4LjIgTCA2OC4zIDU2LjkgTCA3MC42IDU1LjYgTCA3Mi45IDU0LjUgTCA3NS4zIDUzLjYgTCA3Ny43IDUyLjggTCA4MC4yIDUyLjEgTCA4Mi43IDUxLjYgTCA4NS4zIDUxLjMgTCA4Ny45IDUxLjEgTCA5MC40IDUxLjAgTCA5My4wIDUxLjEgTCA5NS42IDUxLjQgTCA5OC4xIDUxLjggTCAxMDAuNiA1Mi4zIEwgMTAzLjEgNTMuMCBMIDEwNS41IDUzLjkgTCAxMDcuOSA1NC45IEwgMTEwLjIgNTYuMCIvPjxwYXRoIGQ9Ik0gNDMuMyAxMTYuOCBMIDQyLjAgMTE0LjAgTCA0MC45IDExMS4xIEwgMzkuOSAxMDguMSBMIDM5LjIgMTA1LjEgTCAzOC42IDEwMi4wIEwgMzguMiA5OC45IEwgMzguMCA5NS44IEwgMzguMCA5Mi43IEwgMzguMiA4OS42IEwgMzguNSA4Ni41IEwgMzkuMSA4My40IEwgMzkuOCA4MC40IEwgNDAuNyA3Ny40IEwgNDEuOCA3NC41IEwgNDMuMCA3MS43IEwgNDQuNSA2OC45IEwgNDYuMCA2Ni4yIEwgNDcuOCA2My42IEwgNDkuNyA2MS4yIEwgNTEuNyA1OC44IEwgNTMuOSA1Ni42IEwgNTYuMiA1NC41IEwgNTguNiA1Mi41IEwgNjEuMSA1MC43IEwgNjMuOCA0OS4xIEwgNjYuNSA0Ny42IEwgNjkuMyA0Ni4zIEwgNzIuMiA0NS4xIEwgNzUuMiA0NC4yIEwgNzguMiA0My40IEwgODEuMiA0Mi43IEwgODQuMyA0Mi4zIEwgODcuNCA0Mi4xIEwgOTAuNSA0Mi4wIEwgOTMuNiA0Mi4xIEwgOTYuNyA0Mi40IEwgOTkuOCA0Mi45IEwgMTAyLjggNDMuNiBMIDEwNS44IDQ0LjUgTCAxMDguOCA0NS41IEwgMTExLjYgNDYuNyBMIDExNC40IDQ4LjEiLz48cGF0aCBkPSJNIDM1LjIgMTIwLjcgTCAzMy43IDExNy40IEwgMzIuNCAxMTQuMCBMIDMxLjMgMTEwLjUgTCAzMC40IDEwNy4wIEwgMjkuNyAxMDMuNCBMIDI5LjMgOTkuOCBMIDI5LjAgOTYuMSBMIDI5LjAgOTIuNSBMIDI5LjIgODguOCBMIDI5LjYgODUuMiBMIDMwLjMgODEuNiBMIDMxLjEgNzguMSBMIDMyLjIgNzQuNiBMIDMzLjQgNzEuMSBMIDM0LjkgNjcuOCBMIDM2LjYgNjQuNiBMIDM4LjQgNjEuNCBMIDQwLjUgNTguNCBMIDQyLjcgNTUuNSBMIDQ1LjEgNTIuNyBMIDQ3LjYgNTAuMSBMIDUwLjMgNDcuNyBMIDUzLjIgNDUuNCBMIDU2LjEgNDMuMyBMIDU5LjIgNDEuMyBMIDYyLjQgMzkuNiBMIDY1LjcgMzguMCBMIDY5LjEgMzYuNyBMIDcyLjYgMzUuNSBMIDc2LjEgMzQuNiBMIDc5LjcgMzMuOSBMIDgzLjMgMzMuNCBMIDg3LjAgMzMuMSBMIDkwLjYgMzMuMCBMIDk0LjMgMzMuMSBMIDk3LjkgMzMuNSBMIDEwMS41IDM0LjEgTCAxMDUuMSAzNC45IEwgMTA4LjYgMzUuOSBMIDExMi4wIDM3LjEgTCAxMTUuNCAzOC41IEwgMTE4LjYgNDAuMSIvPjwvc3ZnPg==') center/cover no-repeat !important;}

/* ===== Sozheim+ ridges darkened (D: dark delicate engraved grooves) — supersedes T2 ::before ===== */
.app-header #lang-btn.lang-btn::before{background:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNDAgMTQwIiBmaWxsPSJub25lIiBzdHJva2U9IiMwNjE0MmQiIHN0cm9rZS13aWR0aD0iMS43IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0gNzUuNiAxMDEuMCBMIDc1LjIgMTAwLjEgTCA3NC45IDk5LjIgTCA3NC42IDk4LjMgTCA3NC40IDk3LjQgTCA3NC4yIDk2LjUgTCA3NC4xIDk1LjUgTCA3NC4wIDk0LjYgTCA3NC4wIDkzLjYgTCA3NC4xIDkyLjYgTCA3NC4yIDkxLjcgTCA3NC4zIDkwLjggTCA3NC42IDg5LjggTCA3NC44IDg4LjkgTCA3NS4yIDg4LjAgTCA3NS42IDg3LjEgTCA3Ni4wIDg2LjMgTCA3Ni41IDg1LjUgTCA3Ny4wIDg0LjcgTCA3Ny42IDgzLjkgTCA3OC4yIDgzLjIgTCA3OC45IDgyLjUgTCA3OS42IDgxLjggTCA4MC4zIDgxLjIgTCA4MS4xIDgwLjcgTCA4MS45IDgwLjIgTCA4Mi44IDc5LjcgTCA4My42IDc5LjMgTCA4NC41IDc5LjAgTCA4NS40IDc4LjcgTCA4Ni40IDc4LjQgTCA4Ny4zIDc4LjIgTCA4OC4yIDc4LjEgTCA4OS4yIDc4LjAgTCA5MC4yIDc4LjAgTCA5MS4xIDc4LjAgTCA5Mi4xIDc4LjEgTCA5My4wIDc4LjMgTCA5My45IDc4LjUgTCA5NC45IDc4LjggTCA5NS44IDc5LjEgTCA5Ni43IDc5LjQgTCA5Ny41IDc5LjkiLz48cGF0aCBkPSJNIDY3LjUgMTA1LjAgTCA2Ni45IDEwMy42IEwgNjYuNCAxMDIuMiBMIDY1LjkgMTAwLjggTCA2NS42IDk5LjMgTCA2NS4zIDk3LjggTCA2NS4xIDk2LjQgTCA2NS4wIDk0LjkgTCA2NS4wIDkzLjQgTCA2NS4xIDkxLjkgTCA2NS4zIDkwLjQgTCA2NS41IDg4LjkgTCA2NS45IDg3LjUgTCA2Ni4zIDg2LjAgTCA2Ni44IDg0LjYgTCA2Ny40IDgzLjMgTCA2OC4xIDgxLjkgTCA2OC45IDgwLjYgTCA2OS43IDc5LjQgTCA3MC42IDc4LjIgTCA3MS42IDc3LjEgTCA3Mi42IDc2LjAgTCA3My43IDc1LjAgTCA3NC45IDc0LjEgTCA3Ni4xIDczLjIgTCA3Ny40IDcyLjQgTCA3OC43IDcxLjcgTCA4MC4xIDcxLjEgTCA4MS40IDcwLjUgTCA4Mi45IDcwLjAgTCA4NC4zIDY5LjcgTCA4NS44IDY5LjQgTCA4Ny4zIDY5LjIgTCA4OC44IDY5LjAgTCA5MC4yIDY5LjAgTCA5MS43IDY5LjEgTCA5My4yIDY5LjIgTCA5NC43IDY5LjQgTCA5Ni4yIDY5LjggTCA5Ny42IDcwLjIgTCA5OS4wIDcwLjcgTCAxMDAuNCA3MS4zIEwgMTAxLjcgNzEuOSIvPjxwYXRoIGQ9Ik0gNTkuNCAxMDguOSBMIDU4LjYgMTA3LjEgTCA1Ny45IDEwNS4xIEwgNTcuMyAxMDMuMiBMIDU2LjggMTAxLjIgTCA1Ni40IDk5LjIgTCA1Ni4yIDk3LjIgTCA1Ni4wIDk1LjIgTCA1Ni4wIDkzLjIgTCA1Ni4xIDkxLjEgTCA1Ni40IDg5LjEgTCA1Ni43IDg3LjEgTCA1Ny4yIDg1LjEgTCA1Ny44IDgzLjIgTCA1OC41IDgxLjMgTCA1OS4zIDc5LjQgTCA2MC4yIDc3LjYgTCA2MS4zIDc1LjggTCA2Mi40IDc0LjIgTCA2My42IDcyLjUgTCA2NS4wIDcxLjAgTCA2Ni40IDY5LjUgTCA2Ny45IDY4LjIgTCA2OS41IDY2LjkgTCA3MS4xIDY1LjcgTCA3Mi45IDY0LjYgTCA3NC42IDYzLjcgTCA3Ni41IDYyLjggTCA3OC40IDYyLjEgTCA4MC4zIDYxLjQgTCA4Mi4zIDYwLjkgTCA4NC4zIDYwLjUgTCA4Ni4zIDYwLjIgTCA4OC4zIDYwLjAgTCA5MC4zIDYwLjAgTCA5Mi40IDYwLjEgTCA5NC40IDYwLjMgTCA5Ni40IDYwLjYgTCA5OC40IDYxLjEgTCAxMDAuMyA2MS42IEwgMTAyLjMgNjIuMyBMIDEwNC4xIDYzLjEgTCAxMDYuMCA2NC4wIi8+PHBhdGggZD0iTSA1MS40IDExMi44IEwgNTAuMyAxMTAuNSBMIDQ5LjQgMTA4LjEgTCA0OC42IDEwNS42IEwgNDguMCAxMDMuMSBMIDQ3LjUgMTAwLjYgTCA0Ny4yIDk4LjEgTCA0Ny4wIDk1LjUgTCA0Ny4wIDkyLjkgTCA0Ny4yIDkwLjQgTCA0Ny40IDg3LjggTCA0Ny45IDg1LjMgTCA0OC41IDgyLjggTCA0OS4yIDgwLjMgTCA1MC4xIDc3LjkgTCA1MS4yIDc1LjUgTCA1Mi4zIDczLjIgTCA1My42IDcxLjAgTCA1NS4xIDY4LjkgTCA1Ni43IDY2LjkgTCA1OC4zIDY0LjkgTCA2MC4xIDYzLjEgTCA2Mi4wIDYxLjMgTCA2NC4wIDU5LjcgTCA2Ni4xIDU4LjIgTCA2OC4zIDU2LjkgTCA3MC42IDU1LjYgTCA3Mi45IDU0LjUgTCA3NS4zIDUzLjYgTCA3Ny43IDUyLjggTCA4MC4yIDUyLjEgTCA4Mi43IDUxLjYgTCA4NS4zIDUxLjMgTCA4Ny45IDUxLjEgTCA5MC40IDUxLjAgTCA5My4wIDUxLjEgTCA5NS42IDUxLjQgTCA5OC4xIDUxLjggTCAxMDAuNiA1Mi4zIEwgMTAzLjEgNTMuMCBMIDEwNS41IDUzLjkgTCAxMDcuOSA1NC45IEwgMTEwLjIgNTYuMCIvPjxwYXRoIGQ9Ik0gNDMuMyAxMTYuOCBMIDQyLjAgMTE0LjAgTCA0MC45IDExMS4xIEwgMzkuOSAxMDguMSBMIDM5LjIgMTA1LjEgTCAzOC42IDEwMi4wIEwgMzguMiA5OC45IEwgMzguMCA5NS44IEwgMzguMCA5Mi43IEwgMzguMiA4OS42IEwgMzguNSA4Ni41IEwgMzkuMSA4My40IEwgMzkuOCA4MC40IEwgNDAuNyA3Ny40IEwgNDEuOCA3NC41IEwgNDMuMCA3MS43IEwgNDQuNSA2OC45IEwgNDYuMCA2Ni4yIEwgNDcuOCA2My42IEwgNDkuNyA2MS4yIEwgNTEuNyA1OC44IEwgNTMuOSA1Ni42IEwgNTYuMiA1NC41IEwgNTguNiA1Mi41IEwgNjEuMSA1MC43IEwgNjMuOCA0OS4xIEwgNjYuNSA0Ny42IEwgNjkuMyA0Ni4zIEwgNzIuMiA0NS4xIEwgNzUuMiA0NC4yIEwgNzguMiA0My40IEwgODEuMiA0Mi43IEwgODQuMyA0Mi4zIEwgODcuNCA0Mi4xIEwgOTAuNSA0Mi4wIEwgOTMuNiA0Mi4xIEwgOTYuNyA0Mi40IEwgOTkuOCA0Mi45IEwgMTAyLjggNDMuNiBMIDEwNS44IDQ0LjUgTCAxMDguOCA0NS41IEwgMTExLjYgNDYuNyBMIDExNC40IDQ4LjEiLz48cGF0aCBkPSJNIDM1LjIgMTIwLjcgTCAzMy43IDExNy40IEwgMzIuNCAxMTQuMCBMIDMxLjMgMTEwLjUgTCAzMC40IDEwNy4wIEwgMjkuNyAxMDMuNCBMIDI5LjMgOTkuOCBMIDI5LjAgOTYuMSBMIDI5LjAgOTIuNSBMIDI5LjIgODguOCBMIDI5LjYgODUuMiBMIDMwLjMgODEuNiBMIDMxLjEgNzguMSBMIDMyLjIgNzQuNiBMIDMzLjQgNzEuMSBMIDM0LjkgNjcuOCBMIDM2LjYgNjQuNiBMIDM4LjQgNjEuNCBMIDQwLjUgNTguNCBMIDQyLjcgNTUuNSBMIDQ1LjEgNTIuNyBMIDQ3LjYgNTAuMSBMIDUwLjMgNDcuNyBMIDUzLjIgNDUuNCBMIDU2LjEgNDMuMyBMIDU5LjIgNDEuMyBMIDYyLjQgMzkuNiBMIDY1LjcgMzguMCBMIDY5LjEgMzYuNyBMIDcyLjYgMzUuNSBMIDc2LjEgMzQuNiBMIDc5LjcgMzMuOSBMIDgzLjMgMzMuNCBMIDg3LjAgMzMuMSBMIDkwLjYgMzMuMCBMIDk0LjMgMzMuMSBMIDk3LjkgMzMuNSBMIDEwMS41IDM0LjEgTCAxMDUuMSAzNC45IEwgMTA4LjYgMzUuOSBMIDExMi4wIDM3LjEgTCAxMTUuNCAzOC41IEwgMTE4LjYgNDAuMSIvPjwvc3ZnPg==') center/cover no-repeat !important;opacity:.38 !important;filter:drop-shadow(0 .6px .4px rgba(255,255,255,.26)) !important;}

/* ===== Sozheim+ lang fingerprint FINAL (5 arcs, balanced) — supersedes D ::before ===== */
.app-header #lang-btn.lang-btn::before{background:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNDAgMTQwIiBmaWxsPSJub25lIiBzdHJva2U9IiMwNjE0MmQiIHN0cm9rZS13aWR0aD0iMS43IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0gNzUuNiAxMDEuMCBMIDc1LjIgMTAwLjEgTCA3NC45IDk5LjIgTCA3NC42IDk4LjMgTCA3NC40IDk3LjQgTCA3NC4yIDk2LjUgTCA3NC4xIDk1LjUgTCA3NC4wIDk0LjYgTCA3NC4wIDkzLjYgTCA3NC4xIDkyLjYgTCA3NC4yIDkxLjcgTCA3NC4zIDkwLjggTCA3NC42IDg5LjggTCA3NC44IDg4LjkgTCA3NS4yIDg4LjAgTCA3NS42IDg3LjEgTCA3Ni4wIDg2LjMgTCA3Ni41IDg1LjUgTCA3Ny4wIDg0LjcgTCA3Ny42IDgzLjkgTCA3OC4yIDgzLjIgTCA3OC45IDgyLjUgTCA3OS42IDgxLjggTCA4MC4zIDgxLjIgTCA4MS4xIDgwLjcgTCA4MS45IDgwLjIgTCA4Mi44IDc5LjcgTCA4My42IDc5LjMgTCA4NC41IDc5LjAgTCA4NS40IDc4LjcgTCA4Ni40IDc4LjQgTCA4Ny4zIDc4LjIgTCA4OC4yIDc4LjEgTCA4OS4yIDc4LjAgTCA5MC4yIDc4LjAgTCA5MS4xIDc4LjAgTCA5Mi4xIDc4LjEgTCA5My4wIDc4LjMgTCA5My45IDc4LjUgTCA5NC45IDc4LjggTCA5NS44IDc5LjEgTCA5Ni43IDc5LjQgTCA5Ny41IDc5LjkiLz48cGF0aCBkPSJNIDY3LjUgMTA1LjAgTCA2Ni45IDEwMy42IEwgNjYuNCAxMDIuMiBMIDY1LjkgMTAwLjggTCA2NS42IDk5LjMgTCA2NS4zIDk3LjggTCA2NS4xIDk2LjQgTCA2NS4wIDk0LjkgTCA2NS4wIDkzLjQgTCA2NS4xIDkxLjkgTCA2NS4zIDkwLjQgTCA2NS41IDg4LjkgTCA2NS45IDg3LjUgTCA2Ni4zIDg2LjAgTCA2Ni44IDg0LjYgTCA2Ny40IDgzLjMgTCA2OC4xIDgxLjkgTCA2OC45IDgwLjYgTCA2OS43IDc5LjQgTCA3MC42IDc4LjIgTCA3MS42IDc3LjEgTCA3Mi42IDc2LjAgTCA3My43IDc1LjAgTCA3NC45IDc0LjEgTCA3Ni4xIDczLjIgTCA3Ny40IDcyLjQgTCA3OC43IDcxLjcgTCA4MC4xIDcxLjEgTCA4MS40IDcwLjUgTCA4Mi45IDcwLjAgTCA4NC4zIDY1LjcgTCA4NS44IDY5LjQgTCA4Ny4zIDY5LjIgTCA4OC44IDY5LjAgTCA5MC4yIDY5LjAgTCA5MS43IDY5LjEgTCA5My4yIDY5LjIgTCA5NC43IDY5LjQgTCA5Ni4yIDY5LjggTCA5Ny42IDcwLjIgTCA5OS4wIDcwLjcgTCAxMDAuNCA3MS4zIEwgMTAxLjcgNzEuOSIvPjxwYXRoIGQ9Ik0gNTkuNCAxMDguOSBMIDU4LjYgMTA3LjEgTCA1Ny45IDEwNS4xIEwgNTcuMyAxMDMuMiBMIDU2LjggMTAxLjIgTCA1Ni40IDk5LjIgTCA1Ni4yIDk3LjIgTCA1Ni4wIDk1LjIgTCA1Ni4wIDkzLjIgTCA1Ni4xIDkxLjEgTCA1Ni40IDg5LjEgTCA1Ni43IDg3LjEgTCA1Ny4yIDg1LjEgTCA1Ny44IDgzLjIgTCA1OC41IDgxLjMgTCA1OS4zIDc5LjQgTCA2MC4yIDc3LjYgTCA2MS4zIDc1LjggTCA2Mi40IDc0LjIgTCA2My42IDcyLjUgTCA2NS4wIDcxLjAgTCA2Ni40IDY5LjUgTCA2Ny45IDY4LjIgTCA2OS41IDY2LjkgTCA3MS4xIDY1LjcgTCA3Mi45IDY0LjYgTCA3NC42IDYzLjcgTCA3Ni41IDYyLjggTCA3OC40IDYyLjEgTCA4MC4zIDYxLjQgTCA4Mi4zIDYwLjkgTCA4NC4zIDYwLjUgTCA4Ni4zIDYwLjIgTCA4OC4zIDYwLjAgTCA5MC4zIDYwLjAgTCA5Mi40IDYwLjEgTCA5NC40IDYwLjMgTCA5Ni40IDYwLjYgTCA5OC40IDYxLjEgTCAxMDAuMyA2MS42IEwgMTAyLjMgNjIuMyBMIDEwNC4xIDYzLjEgTCAxMDYuMCA2NC4wIi8+PHBhdGggZD0iTSA1MS40IDExMi44IEwgNTAuMyAxMTAuNSBMIDQ5LjQgMTA4LjEgTCA0OC42IDEwNS42IEwgNDguMCAxMDMuMSBMIDQ3LjUgMTAwLjYgTCA0Ny4yIDk4LjEgTCA0Ny4wIDk1LjUgTCA0Ny4wIDkyLjkgTCA0Ny4yIDkwLjQgTCA0Ny40IDg3LjggTCA0Ny45IDg1LjMgTCA0OC41IDgyLjggTCA0OS4yIDgwLjMgTCA1MC4xIDc3LjkgTCA1MS4yIDc1LjUgTCA1Mi4zIDczLjIgTCA1My42IDcxLjAgTCA1NS4xIDY4LjkgTCA1Ni43IDY2LjkgTCA1OC4zIDY0LjkgTCA2MC4xIDYzLjEgTCA2Mi4wIDYxLjMgTCA2NC4wIDU5LjcgTCA2Ni4xIDU4LjIgTCA2OC4zIDU2LjkgTCA3MC42IDU1LjYgTCA3Mi45IDU0LjUgTCA3NS4zIDUzLjYgTCA3Ny43IDUyLjggTCA4MC4yIDUyLjEgTCA4Mi43IDUxLjYgTCA4NS4zIDUxLjMgTCA4Ny45IDUxLjEgTCA5MC40IDUxLjAgTCA5My4wIDUxLjEgTCA5NS42IDUxLjQgTCA5OC4xIDUxLjggTCAxMDAuNiA1Mi4zIEwgMTAzLjEgNTMuMCBMIDEwNS41IDUzLjkgTCAxMDcuOSA1NC45IEwgMTEwLjIgNTYuMCIvPjxwYXRoIGQ9Ik0gNDMuMyAxMTYuOCBMIDQyLjAgMTE0LjAgTCA0MC45IDExMS4xIEwgMzkuOSAxMDguMSBMIDM5LjIgMTA1LjEgTCAzOC42IDEwMi4wIEwgMzguMiA5OC45IEwgMzguMCA5NS44IEwgMzguMCA5Mi43IEwgMzguMiA4OS42IEwgMzguNSA4Ni41IEwgMzkuMSA4My40IEwgMzkuOCA4MC40IEwgNDAuNyA3Ny40IEwgNDEuOCA3NC41IEwgNDMuMCA3MS43IEwgNDQuNSA2OC45IEwgNDYuMCA2Ni4yIEwgNDcuOCA2My42IEwgNDkuNyA2MS4yIEwgNTEuNyA1OC44IEwgNTMuOSA1Ni42IEwgNTYuMiA1NC41IEwgNTguNiA1Mi41IEwgNjEuMSA1MC43IEwgNjMuOCA0OS4xIEwgNjYuNSA0Ny42IEwgNjkuMyA0Ni4zIEwgNzIuMiA0NS4xIEwgNzUuMiA0NC4yIEwgNzguMiA0My40IEwgODEuMiA0Mi43IEwgODQuMyA0Mi4zIEwgODcuNCA0Mi4xIEwgOTAuNSA0Mi4wIEwgOTMuNiA0Mi4xIEwgOTYuNyA0Mi40IEwgOTkuOCA0Mi45IEwgMTAyLjggNDMuNiBMIDEwNS44IDQ0LjUgTCAxMDguOCA0NS41IEwgMTExLjYgNDYuNyBMIDExNC40IDQ4LjEiLz48L3N2Zz4=') center/cover no-repeat !important;opacity:.38 !important;filter:drop-shadow(0 .6px .4px rgba(255,255,255,.26)) !important;}

/* ===== Sozheim+ lang fingerprint FINAL v2 (leaned to wordmark + raised, organic) — supersedes prior ::before ===== */
.app-header #lang-btn.lang-btn::before{background:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNDAgMTQwIiBmaWxsPSJub25lIiBzdHJva2U9IiMwNjE0MmQiIHN0cm9rZS13aWR0aD0iMS43IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0gODEuMSA5NC4wIEwgODAuNyA5My4yIEwgODAuMyA5Mi40IEwgODAuMCA5MS41IEwgNzkuNyA5MC43IEwgNzkuNSA4OS44IEwgNzkuMyA4OC45IEwgNzkuMSA4OC4wIEwgNzkuMCA4Ny4xIEwgNzkuMCA4Ni4yIEwgNzkuMCA4NS4zIEwgNzkuMSA4NC40IEwgNzkuMiA4My41IEwgNzkuNCA4Mi42IEwgNzkuNiA4MS43IEwgNzkuOSA4MC44IEwgODAuMiA4MC4wIEwgODAuNiA3OS4xIEwgODEuMCA3OC4zIEwgODEuNCA3Ny41IEwgODEuOSA3Ni44IEwgODIuNSA3Ni4wIEwgODMuMSA3NS4zIEwgODMuNyA3NC43IEwgODQuMyA3NC4xIEwgODUuMCA3My41IEwgODUuOCA3Mi45IEwgODYuNSA3Mi40IEwgODcuMyA3Mi4wIEwgODguMSA3MS42IEwgODkuMCA3MS4yIEwgODkuOCA3MC45IEwgOTAuNyA3MC42IEwgOTEuNiA3MC40IEwgOTIuNSA3MC4yIEwgOTMuNCA3MC4xIEwgOTQuMyA3MC4wIEwgOTUuMiA3MC4wIEwgOTYuMSA3MC4wIEwgOTcuMCA3MC4xIEwgOTcuOSA3MC4zIEwgOTguOCA3MC41IEwgOTkuNyA3MC43IEwgMTAwLjUgNzEuMCBMIDEwMS40IDcxLjMgTCAxMDIuMiA3MS43IEwgMTAzLjAgNzIuMSIvPjxwYXRoIGQ9Ik0gNzIuNSA5OS4wIEwgNzEuOCA5Ny43IEwgNzEuMiA5Ni40IEwgNzAuNiA5NS4wIEwgNzAuMSA5My42IEwgNjkuNyA5Mi4yIEwgNjkuNCA5MC43IEwgNjkuMiA4OS4yIEwgNjkuMSA4Ny44IEwgNjkuMCA4Ni4zIEwgNjkuMCA4NC44IEwgNjkuMSA4My4zIEwgNjkuMyA4MS45IEwgNjkuNiA4MC40IEwgNzAuMCA3OS4wIEwgNzAuNCA3Ny42IEwgNzAuOSA3Ni4yIEwgNzEuNSA3NC44IEwgNzIuMiA3My41IEwgNzIuOSA3Mi4yIEwgNzMuOCA3MS4wIEwgNzQuNiA2OS44IEwgNzUuNiA2OC43IEwgNzYuNiA2Ny42IEwgNzcuNyA2Ni42IEwgNzguOCA2NS42IEwgODAuMCA2NC44IEwgODEuMiA2My45IEwgODIuNSA2My4yIEwgODMuOCA2Mi41IEwgODUuMiA2MS45IEwgODYuNiA2MS40IEwgODguMCA2MS4wIEwgODkuNCA2MC42IEwgOTAuOSA2MC4zIEwgOTIuMyA2MC4xIEwgOTMuOCA2MC4wIEwgOTUuMyA2MC4wIEwgOTYuOCA2MC4xIEwgOTguMiA2MC4yIEwgOTkuNyA2MC40IEwgMTAxLjIgNjAuNyBMIDEwMi42IDYxLjEgTCAxMDQuMCA2MS42IEwgMTA1LjQgNjIuMiBMIDEwNi43IDYyLjggTCAxMDguMCA2My41Ii8+PHBhdGggZD0iTSA2My44IDEwNC4wIEwgNjIuOCAxMDIuMiBMIDYyLjAgMTAwLjMgTCA2MS4yIDk4LjQgTCA2MC42IDk2LjUgTCA2MC4wIDk0LjUgTCA1OS42IDkyLjUgTCA1OS4zIDkwLjUgTCA1OS4xIDg4LjUgTCA1OS4wIDg2LjQgTCA1OS4wIDg0LjQgTCA1OS4yIDgyLjMgTCA1OS41IDgwLjMgTCA1OS44IDc4LjMgTCA2MC4zIDc2LjMgTCA2MC45IDc0LjMgTCA2MS43IDcyLjQgTCA2Mi41IDcwLjUgTCA2My40IDY4LjcgTCA2NC41IDY2LjkgTCA2NS42IDY1LjIgTCA2Ni44IDYzLjYgTCA2OC4xIDYyLjAgTCA2OS41IDYwLjUgTCA3MS4wIDU5LjEgTCA3Mi42IDU3LjggTCA3NC4yIDU2LjYgTCA3NS45IDU1LjUgTCA3Ny43IDU0LjQgTCA3OS41IDUzLjUgTCA4MS40IDUyLjcgTCA4My4zIDUxLjkgTCA4NS4zIDUxLjMgTCA4Ny4zIDUwLjggTCA4OS4zIDUwLjUgTCA5MS4zIDUwLjIgTCA5My40IDUwLjAgTCA5NS40IDUwLjAgTCA5Ny41IDUwLjEgTCA5OS41IDUwLjMgTCAxMDEuNSA1MC42IEwgMTAzLjUgNTEuMCBMIDEwNS41IDUxLjYgTCAxMDcuNCA1Mi4yIEwgMTA5LjMgNTMuMCBMIDExMS4yIDUzLjggTCAxMTMuMCA1NC44Ii8+PHBhdGggZD0iTSA1NS4yIDEwOS4wIEwgNTMuOSAxMDYuNyBMIDUyLjggMTA0LjMgTCA1MS44IDEwMS45IEwgNTEuMCA5OS40IEwgNTAuMyA5Ni45IEwgNDkuOCA5NC4zIEwgNDkuNCA5MS43IEwgNDkuMSA4OS4xIEwgNDkuMCA4Ni41IEwgNDkuMCA4My45IEwgNDkuMiA4MS4zIEwgNDkuNiA3OC43IEwgNTAuMSA3Ni4xIEwgNTAuNyA3My42IEwgNTEuNSA3MS4xIEwgNTIuNCA2OC42IEwgNTMuNSA2Ni4yIEwgNTQuNiA2My45IEwgNTYuMCA2MS43IEwgNTcuNCA1OS41IEwgNTkuMCA1Ny40IEwgNjAuNyA1NS40IEwgNjIuNSA1My41IEwgNjQuNCA1MS43IEwgNjYuNCA1MC4wIEwgNjguNSA0OC40IEwgNzAuNyA0Ny4wIEwgNzIuOSA0NS42IEwgNzUuMiA0NC41IEwgNzcuNiA0My40IEwgODAuMSA0Mi41IEwgODIuNiA0MS43IEwgODUuMSA0MS4xIEwgODcuNyA0MC42IEwgOTAuMyA0MC4yIEwgOTIuOSA0MC4wIEwgOTUuNSA0MC4wIEwgOTguMSA0MC4xIEwgMTAwLjcgNDAuNCBMIDEwMy4zIDQwLjggTCAxMDUuOSA0MS4zIEwgMTA4LjQgNDIuMCBMIDExMC45IDQyLjggTCAxMTMuMyA0My44IEwgMTE1LjcgNDQuOSBMIDExOC4wIDQ2LjIiLz48cGF0aCBkPSJNIDQ2LjUgMTE0LjAgTCA0NS4wIDExMS4yIEwgNDMuNiAxMDguMyBMIDQyLjUgMTA1LjQgTCA0MS40IDEwMi4zIEwgNDAuNiA5OS4zIEwgMzkuOSA5Ni4xIEwgMzkuNCA5My4wIEwgMzkuMSA4OS44IEwgMzkuMCA4Ni42IEwgMzkuMSA4My41IEwgMzkuMyA4MC4zIEwgMzkuNyA3Ny4xIEwgNDAuMyA3NC4wIEwgNDEuMSA3MC45IEwgNDIuMCA2Ny44IEwgNDMuMSA2NC45IEwgNDQuNCA2MS45IEwgNDUuOSA1OS4xIEwgNDcuNSA1Ni40IEwgNDkuMiA1My43IEwgNTEuMiA1MS4yIEwgNTMuMiA0OC43IEwgNTUuNCA0Ni40IEwgNTcuNyA0NC4yIEwgNjAuMiA0Mi4yIEwgNjIuNyA0MC4yIEwgNjUuNCAzOC41IEwgNjguMSAzNi45IEwgNzAuOSAzNS40IEwgNzMuOSAzNC4xIEwgNzYuOCAzMy4wIEwgNzkuOSAzMi4xIEwgODMuMCAzMS4zIEwgODYuMSAzMC43IEwgODkuMyAzMC4zIEwgOTIuNSAzMC4xIEwgOTUuNiAzMC4wIEwgOTguOCAzMC4xIEwgMTAyLjAgMzAuNCBMIDEwNS4xIDMwLjkgTCAxMDguMyAzMS42IEwgMTExLjMgMzIuNCBMIDExNC40IDMzLjUgTCAxMTcuMyAzNC42IEwgMTIwLjIgMzYuMCBMIDEyMy4wIDM3LjUiLz48L3N2Zz4=') center/cover no-repeat !important;opacity:.38 !important;filter:drop-shadow(0 .6px .4px rgba(255,255,255,.26)) !important;}

/* ===== Sozheim+ lang fingerprint FINAL v3 (irregular loop + minutiae, seed7) — supersedes prior ::before ===== */
.app-header #lang-btn.lang-btn::before{background:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNDAgMTQwIiBmaWxsPSJub25lIiBzdHJva2U9IiMwNjE0MmQiIHN0cm9rZS13aWR0aD0iMS43IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0gODIuMCA4Ni43IEwgODEuOSA4Ni4yIEwgODEuOSA4NS42IEwgODEuOCA4NS4wIEwgODEuOCA4NC41IEwgODEuOCA4My45IEwgODEuOSA4My40IEwgODEuOSA4Mi44IEwgODEuOSA4Mi4zIEwgODIuMCA4MS43IEwgODIuMCA4MS4yIEwgODIuMSA4MC42IEwgODIuMSA4MC4xIEwgODIuMSA3OS41IEwgODIuMiA3OS4wIEwgODIuMyA3OC40IEwgODIuMyA3Ny44IEwgODIuNCA3Ny4yIEwgODIuNSA3Ni42IEwgODIuNyA3Ni4wIEwgODIuOCA3NS40IEwgODMuMCA3NC44IEwgODMuMiA3NC4yIEwgODMuNSA3My43IEwgODMuOCA3My4xIEwgODQuMiA3Mi42IEwgODQuNiA3Mi4xIEwgODUuMCA3MS42IEwgODUuNSA3MS4yIEwgODYuMCA3MC44IEwgODYuNSA3MC40IEwgODcuMSA3MC4xIEwgODcuNyA2OS44IEwgODguMyA2OS42IEwgODguOSA2OS41IEwgODkuNSA2OS4zIEwgOTAuMSA2OS4zIEwgOTAuOCA2OS4yIEwgOTEuNCA2OS4yIEwgOTIuMCA2OS4zIEwgOTIuNiA2OS4zIEwgOTMuMiA2OS40IEwgOTMuOCA2OS41IEwgOTQuNCA2OS42IEwgOTUuMCA2OS44IEwgOTUuNiA2OS45IEwgOTYuMSA3MC4wIEwgOTYuNiA3MC4yIEwgOTcuMiA3MC4zIEwgOTcuNyA3MC41IEwgOTguMyA3MC42IEwgOTguOCA3MC44IEwgOTkuNCA3MC45IEwgOTkuOSA3MS4xIEwgMTAwLjQgNzEuMyIvPjxwYXRoIGQ9Ik0gODkuOCAxMDIuMiBMIDg4LjQgMTAxLjggTCA4Ny4xIDEwMS40IEwgODUuOSAxMDAuOCBMIDg0LjYgMTAwLjIgTCA4My40IDk5LjUgTCA4Mi4zIDk4LjYgTCA4MS4zIDk3LjcgTCA4MC4zIDk2LjcgTCA3OS40IDk1LjcgTCA3OC42IDk0LjYgTCA3Ny45IDkzLjQgTCA3Ny4yIDkyLjIgTCA3Ni43IDkwLjkgTCA3Ni4yIDg5LjYgTCA3NS45IDg4LjMgTCA3NS42IDg3LjAgTCA3NS40IDg1LjcgTCA3NS40IDg0LjMgTCA3NS4zIDgzLjAgTCA3NS40IDgxLjcgTCA3NS42IDgwLjMgTCA3NS44IDc5LjAgTCA3Ni4xIDc3LjggTCA3Ni41IDc2LjUgTCA3Ni45IDc1LjMgTCA3Ny40IDc0LjAgTCA3OC4wIDcyLjkgTCA3OC43IDcxLjcgTCA3OS40IDcwLjYgTCA4MC4yIDY5LjUgTCA4MS4wIDY4LjUgTCA4MS45IDY3LjUgTCA4Mi45IDY2LjYgTCA4My45IDY1LjcgTCA4NS4wIDY0LjkgTCA4Ni4yIDY0LjIgTCA4Ny40IDYzLjUgTCA4OC43IDYzLjAgTCA5MC4wIDYyLjUgTCA5MS4zIDYyLjEgTCA5Mi43IDYxLjkgTCA5NC4xIDYxLjcgTCA5NS41IDYxLjcgTCA5Ni45IDYxLjcgTCA5OC4zIDYxLjkgTCA5OS42IDYyLjEgTCAxMDEuMCA2Mi41IEwgMTAyLjMgNjMuMCBMIDEwMy42IDYzLjUgTCAxMDQuOCA2NC4yIEwgMTA2LjAgNjQuOSBMIDEwNy4xIDY1LjggTCAxMDguMiA2Ni43IEwgMTA5LjIgNjcuNiIvPjxwYXRoIGQ9Ik0gNzcuNCA3Mi4yIEwgNzcuNCA3MS40IEwgNzcuNSA3MC42IEwgNzcuNiA2OS44IEwgNzcuOCA2OS4wIEwgNzcuOSA2OC4yIEwgNzguMiA2Ny40IEwgNzguNCA2Ni42IEwgNzguNyA2NS44IEwgNzkuMCA2NS4wIEwgNzkuNCA2NC4yIEwgNzkuOCA2My40IEwgODAuMiA2Mi42IEwgODAuNyA2MS44IEwgODEuMiA2MS4wIEwgODEuOCA2MC4yIEwgODIuMyA1OS41IEwgODMuMCA1OC44IEwgODMuNiA1OC4wIi8+PHBhdGggZD0iTSA4OC4xIDEwNy45IEwgODYuNSAxMDcuNSBMIDg0LjkgMTA3LjAgTCA4My40IDEwNi4zIEwgODEuOSAxMDUuNiBMIDgwLjUgMTA0LjcgTCA3OS4xIDEwMy44IEwgNzcuOSAxMDIuNyBMIDc2LjcgMTAxLjUgTCA3NS42IDEwMC4zIEwgNzQuNiA5OS4wIEwgNzMuNyA5Ny42IEwgNzMuMCA5Ni4xIEwgNzIuMyA5NC42IEwgNzEuNyA5My4xIEwgNzEuMyA5MS42IEwgNzAuOSA5MC4wIEwgNzAuNyA4OC40IEwgNzAuNSA4Ni45IEwgNzAuNCA4NS4zIEwgNzAuNCA4My43IEwgNzAuNCA4Mi4yIEwgNzAuNSA4MC43IEwgNzAuNyA3OS4xIEwgNzAuOSA3Ny42IEwgNzEuMSA3Ni4xIEwgNzEuNCA3NC42IEwgNzEuOCA3My4xIEwgNzIuMyA3MS42IEwgNzIuOCA3MC4xIEwgNzMuNCA2OC42IEwgNzQuMCA2Ny4xIEwgNzQuOCA2NS43IEwgNzUuNiA2NC4zIEwgNzYuNiA2Mi45IEwgNzcuNiA2MS43IEwgNzguNyA2MC40IEwgODAuMCA1OS4zIEwgODEuMyA1OC4yIEwgODIuNyA1Ny4zIEwgODQuMiA1Ni41IEwgODUuNyA1NS44IEwgODcuMyA1NS4yIEwgODguOSA1NC43IEwgOTAuNiA1NC40IEwgOTIuMyA1NC4yIEwgOTQuMCA1NC4xIEwgOTUuNyA1NC4yIEwgOTcuMyA1NC4zIEwgOTkuMCA1NC42IEwgMTAwLjYgNTQuOSBMIDEwMi4yIDU1LjQgTCAxMDMuOCA1NS45IEwgMTA1LjMgNTYuNSBMIDEwNi44IDU3LjEiLz48cGF0aCBkPSJNIDY3LjUgMTA1LjUgTCA2Ni40IDEwMy45IEwgNjUuNCAxMDIuMiBMIDY0LjUgMTAwLjUgTCA2My43IDk4LjcgTCA2My4wIDk2LjggTCA2Mi41IDk0LjkgTCA2Mi4xIDkyLjAgTCA2MS44IDkxLjEgTCA2MS42IDg5LjIgTCA2MS41IDg3LjMgTCA2MS41IDg1LjQgTCA2MS42IDgzLjUgTCA2MS43IDgxLjYgTCA2MS45IDc5LjcgTCA2Mi4yIDc3LjggTCA2Mi42IDc2LjAgTCA2My4wIDc0LjEgTCA2My41IDcyLjMgTCA2NC4wIDcwLjQgTCA2NC42IDY4LjYgTCA2NS4zIDY2LjggTCA2Ni4xIDY1LjAgTCA2Ny4wIDYzLjMgTCA2Ny45IDYxLjUgTCA2OS4wIDU5LjggTCA3MC4xIDU4LjIgTCA3MS40IDU2LjYgTCA3Mi44IDU1LjEgTCA3NC4yIDUzLjcgTCA3NS44IDUyLjQgTCA3Ny41IDUxLjIgTCA3OS4zIDUwLjEgTCA4MS4xIDQ5LjIgTCA4My4wIDQ4LjQgTCA4NS4wIDQ3LjcgTCA4Ny4wIDQ3LjIgTCA4OS4wIDQ2LjkgTCA5MS4wIDQ2LjcgTCA5My4xIDQ2LjYgTCA5NS4xIDQ2LjYgTCA5Ny4yIDQ2LjggTCA5OS4yIDQ3LjEgTCAxMDEuMSA0Ny41IEwgMTAzLjEgNDguMCBMIDEwNS4wIDQ4LjYgTCAxMDYuOCA0OS4yIEwgMTA4LjcgNTAuMCBMIDExMC41IDUwLjggTCAxMTIuMiA1MS42IEwgMTEzLjkgNTIuNiBMIDExNS42IDUzLjYgTCAxMTcuMyA1NC42IEwgMTE4LjkgNTUuOCBMIDEyMC40IDU3LjAiLz48cGF0aCBkPSJNIDYxLjIgMTA2LjEgTCA2MC4yIDEwNC4yIEwgNTkuMyAxMDIuMyBMIDU4LjUgMTAwLjQgTCA1Ny44IDk4LjQgTCA1Ny4yIDk2LjQgTCA1Ni43IDk0LjMgTCA1Ni40IDkyLjIgTCA1Ni4yIDkwLjEgTCA1Ni4wIDg4LjAgTCA1Ni4wIDg2LjAgTCA1Ni4yIDgzLjkgTCA1Ni40IDgxLjggTCA1Ni43IDc5LjcgTCA1Ny4xIDc3LjcgTCA1Ny42IDc1LjcgTCA1OC4yIDczLjcgTCA1OC45IDcxLjggTCA1OS43IDY5LjkgTCA2MC42IDY4LjAgTCA2MS42IDY2LjIgTCA2Mi42IDY0LjQgTCA2My43IDYyLjcgTCA2NC45IDYxLjAgTCA2Ni4yIDU5LjQgTCA2Ny41IDU3LjkgTCA2OC45IDU2LjQgTCA3MC40IDU0LjkgTCA3MS45IDUzLjUgTCA3My41IDUyLjIgTCA3NS4xIDUxLjAgTCA3Ni44IDQ5LjggTCA3OC42IDQ4LjcgTCA4MC40IDQ3LjcgTCA4Mi4yIDQ2LjggTCA4NC4xIDQ2LjAgTCA4Ni4xIDQ1LjIgTCA4OC4xIDQ0LjYgTCA5MC4xIDQ0LjAgTCA5Mi4xIDQyLjYgTCA5NC4yIDQzLjMgTCA5Ni4zIDQzLjAgTCA5OC40IDQyLjkgTCAxMDAuNSA0Mi45IEwgMTAyLjYgNDMuMSBMIDEwNC43IDQzLjMgTCAxMDYuOCA0My43IEwgMTA4LjkgNDQuMSBMIDExMC45IDQ0LjcgTCAxMTIuOSA0NS40IEwgMTE0LjkgNDYuMiBMIDExNi44IDQ3LjEgTCAxMTguNiA0OC4yIEwgMTIwLjQgNDkuMyBMIDEyMi4yIDUwLjUiLz48cGF0aCBkPSJNIDY2LjUgNTcuMiBMIDY3LjAgNTYuMiBMIDY3LjQgNTUuMiBMIDY4LjAgNTQuMiBMIDY4LjUgNTMuMiBMIDY5LjAgNTIuMiBMIDY5LjYgNTEuMiBMIDcwLjMgNTAuMiBMIDcwLjkgNDkuMiBMIDcxLjYgNDguMyBMIDcyLjMgNDcuNCBMIDczLjEgNDYuNCBMIDczLjkgNDUuNSBMIDc0LjcgNDQuNiBMIDc1LjUgNDMuNyBMIDc2LjQgNDIuOSBMIDc3LjMgNDIuMCBMIDc4LjIgNDEuMiBMIDc5LjEgNDAuNCIvPjxwYXRoIGQ9Ik0gNDUuMiA5Mi4zIEwgNDQuOCA5MC4yIEwgNDQuNSA4OC4yIEwgNDQuMiA4Ni4xIEwgNDQuMSA4NC4wIEwgNDQuMCA4Mi4wIEwgNDQuMSA3OS45IEwgNDQuMiA3Ny44IEwgNDQuNSA3NS43IEwgNDQuOCA3My43IEwgNDUuMiA3MS42IEwgNDUuOCA2OS42IEwgNDYuNCA2Ny42IEwgNDcuMSA2NS43IEwgNDcuOSA2My44IEwgNDguNyA2MS45IEwgNDkuNyA2MC4xIEwgNTAuNyA1OC4zIEwgNTEuOCA1Ni41IEwgNTIuOSA1NC44IEwgNTQuMSA1My4yIEwgNTUuNCA1MS42IEwgNTYuNyA1MC4wIEwgNTguMSA0OC42IEwgNTkuNSA0Ny4xIEwgNjEuMCA0NS43IEwgNjIuNiA0NC40IEwgNjQuMSA0My4xIEwgNjUuOCA0MS45IEwgNjcuNCA0MC44IEwgNjkuMSAzOS43IEwgNzAuOSAzOC42IEwgNzIuNiAzNy43IEwgNzQuNCAzNi43IEwgNzYuMyAzNS45IEwgNzguMiAzNS4xIEwgODAuMSAzNC40IEwgODIuMCAzMy44IEwgODQuMCAzMy4yIEwgODUuOSAzMi43IEwgODcuOSAzMi4zIEwgOTAuMCAzMS45IEwgOTIuMCAzMS43IEwgOTQuMSAzMS41IEwgOTYuMSAzMS40IEwgOTguMiAzMS41IEwgMTAwLjMgMzEuNiBMIDEwMi4zIDMxLjcgTCAxMDQuNCAzMi4wIEwgMTA2LjQgMzIuNCBMIDEwOC40IDMyLjkgTCAxMTAuNCAzMy40IEwgMTEyLjQgMzQuMSBMIDExNC4zIDM0LjkgTCAxMTYuMyAzNS43Ii8+PHBhdGggZD0iTSA2MS44IDEyOC45IEwgNTkuMSAxMjYuNSBMIDU2LjUgMTI0LjAgTCA1NC4wIDEyMS40IEwgNTEuOCAxMTguNiBMIDQ5LjcgMTE1LjcgTCA0Ny43IDExMi43IEwgNDYuMCAxMDkuNiBMIDQ0LjQgMTA2LjQgTCA0Mi45IDEwMy4xIEwgNDEuNyA5OS44IEwgNDAuNiA5Ni4zIEwgMzkuNyA5Mi45IEwgMzguOSA4OS4zIEwgMzguNCA4NS44IEwgMzguMCA4Mi4xIEwgMzcuOSA3OC41IEwgMzguMCA3NC44IEwgMzguMyA3MS4yIEwgMzguOCA2Ny41IEwgMzkuNiA2My45IEwgNDAuNyA2MC4zIEwgNDIuMCA1Ni44IEwgNDMuNiA1My40IEwgNDUuNCA1MC4yIEwgNDcuNCA0Ny4wIEwgNDkuNyA0NC4xIEwgNTIuMiA0MS4zIEwgNTQuOSAzOC43IEwgNTcuOCAzNi4zIEwgNjAuOCAzNC4xIEwgNjMuOSAzMi4yIEwgNjcuMiAzMC41IEwgNzAuNiAyOS4wIEwgNzQuMCAyNy43IEwgNzcuNSAyNi43IEwgODEuMCAyNS45IEwgODQuNiAyNS4yIEwgODguMSAyNC44IEwgOTEuNyAyNC41IEwgOTUuMyAyNC41IEwgOTguOCAyNC42IEwgMTAyLjQgMjQuOSBMIDEwNS45IDI1LjQgTCAxMDkuNCAyNi4wIEwgMTEyLjggMjYuOSBMIDExNi4zIDI3LjkgTCAxMTkuNiAyOS4xIEwgMTIyLjkgMzAuNSBMIDEyNi4xIDMyLjEgTCAxMjkuMiAzMy45IEwgMTMyLjIgMzUuOSBMIDEzNS4xIDM4LjEgTCAxMzcuOCA0MC41IEwgMTQwLjMgNDMuMCIvPjxwYXRoIGQ9Ik0gNTAuNSAxMzAuNSBMIDQ4LjIgMTI4LjIgTCA0Ni4wIDEyNS45IEwgNDQuMCAxMjMuNCBMIDQyLjEgMTIwLjggTCA0MC4zIDExOC4xIEwgMzguNiAxMTUuNCBMIDM3LjEgMTEyLjYgTCAzNS44IDEwOS43IEwgMzQuNSAxMDYuNyBMIDMzLjQgMTAzLjcgTCAzMi41IDEwMC43IEwgMzEuNiA5Ny42IEwgMzEuMCA5NC41IEwgMzAuNSA5MS4zIEwgMzAuMSA4OC4yIEwgMjkuOSA4NS4wIEwgMjkuOCA4MS44IEwgMjkuOCA3OC42IEwgMzAuMSA3NS40IEwgMzAuNCA3Mi4yIEwgMzEuMCA2OS4wIEwgMzEuNiA2NS45IEwgMzIuNSA2Mi44IEwgMzMuNSA1OS43IEwgMzQuNiA1Ni43IEwgMzUuOSA1My43IEwgMzcuMyA1MC44IEwgMzguOSA0OC4wIEwgNDAuNiA0NS4zIEwgNDIuNSA0Mi44IEwgNDQuNSA0MC4wIEwgNDYuNyAzNy42IEwgNDkuMCAzNS4zIEwgNTEuNCAzMy4xIEwgNTMuOSAzMS4wIEwgNTYuNSAyOS4xIEwgNTkuMiAyNy4zIEwgNjIuMCAyNS42IEwgNjQuOSAyNC4xIEwgNjcuOSAyMi43IEwgNzAuOSAyMS42IEwgNzQuMCAyMC41IEwgNzcuMSAxOS43IEwgODAuMyAxOS4wIEwgODMuNSAxOC40IEwgODYuNyAxOC4wIEwgODkuOSAxNy44IEwgOTMuMiAxNy43IEwgOTYuNCAxNy44IEwgOTkuNiAxOC4xIEwgMTAyLjggMTguNSBMIDEwNi4wIDE5LjAgTCAxMDkuMSAxOS43IEwgMTEyLjIgMjAuNiIvPjxwYXRoIGQ9Ik0gOTcuMiA4OS41IEwgOTYuNiA5MC4zIEwgOTUuOCA5MS4wIEwgOTQuOSA5MS41IEwgOTMuOSA5MS44IEwgOTIuOCA5Mi4wIEwgOTEuNyA5Mi4wIEwgOTAuNiA5MS44IEwgODkuNiA5MS4zIEwgODguNiA5MC43IEwgODcuOCA4OS45IEwgODcuMCA4OC45IEwgODYuNSA4Ny44IEwgODYuMiA4Ni43IEwgODYuMSA4NS40IEwgODYuMiA4NC4yIEwgODYuNSA4Mi45IEwgODcuMSA4MS43IEwgODcuOSA4MC43IEwgODguOSA3OS44IEwgOTAuMCA3OS4wIEwgOTEuMyA3OC41IEwgOTIuNyA3OC4yIEwgOTQuMSA3OC4yIEwgOTUuNSA3OC40IEwgOTYuOSA3OC45IEwgOTguMiA3OS42IEwgOTkuMyA4MC42IEwgMTAwLjIgODEuOCBMIDEwMS4wIDgzLjEiLz48cGF0aCBkPSJNIDY2LjYgNzIuOCBMIDY2LjggNzEuOCBMIDY3LjEgNzAuOCBMIDY3LjQgNjkuOCBMIDY3LjcgNjguOCBMIDY4LjIgNjcuOCBMIDY4LjcgNjYuOSBMIDY5LjIgNjYuMCBMIDY5LjkgNjUuMiBMIDcwLjYgNjQuNCBMIDcxLjMgNjMuNyBMIDcyLjEgNjIuOSBMIDcyLjkgNjIuMyBMIDczLjcgNjEuNiBMIDc0LjUgNjEuMCBMIDc1LjMgNjAuNCBMIDc2LjIgNTkuOCIvPjwvc3ZnPg==') center/cover no-repeat !important;opacity:.4 !important;filter:drop-shadow(0 .6px .4px rgba(255,255,255,.26)) !important;}

/* ===== Sozheim+ lang fingerprint FINAL v4 (true loop, few varied ridges) — supersedes prior ::before ===== */
.app-header #lang-btn.lang-btn::before{background:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNDAgMTQwIiBmaWxsPSJub25lIiBzdHJva2U9IiMwNjE0MmQiIHN0cm9rZS13aWR0aD0iMS44IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0gODguMCA5MS4zIEwgODYuOCA4Ny43IEwgODUuNiA4NC4xIEwgODQuNSA4MC42IEwgODMuMyA3Ny4wIEwgODIuMSA3My40IEwgODAuOCA2OS44IEwgNzkuNiA2Ni4yIEwgNzguNCA2Mi42IEwgNzcuMSA1OS4xIEwgNzUuOSA1NS41IEwgNzQuNiA1MS45IEwgNzMuMyA0OC4zIEwgNzMuMCA0Ny4zIEwgNzIuOCA0Ni4zIEwgNzIuNiA0NS40IEwgNzIuNSA0NC40IEwgNzIuNCA0My41IEwgNzIuNSA0Mi42IEwgNzIuNSA0MS44IEwgNzIuNyA0MS4wIEwgNzIuOSA0MC40IEwgNzMuMiAzOS44IEwgNzMuNSAzOS4zIEwgNzMuOSAzOC45IEwgNzQuMyAzOC43IEwgNzQuOCAzOC41IEwgNzUuMyAzOC41IEwgNzUuOCAzOC42IEwgNzYuMyAzOC44IEwgNzYuOSAzOS4xIEwgNzcuNCAzOS41IEwgNzcuOSA0MC4wIEwgNzguNSA0MC42IEwgNzkuMCA0MS4zIEwgNzkuNCA0Mi4xIEwgNzkuOSA0Mi45IEwgODAuMiA0My44IEwgODAuNiA0NC43IEwgODEuOSA0OC41IEwgODMuMyA1Mi4yIEwgODQuNiA1Ni4wIEwgODYuMCA1OS43Ii8+PHBhdGggZD0iTSA3OS45IDgxLjAgTCA3OC42IDc3LjUgTCA3Ny4yIDc0LjAgTCA3NS45IDcwLjYgTCA3NC42IDY3LjEgTCA3My4yIDYzLjcgTCA3MS45IDYwLjIgTCA3MC42IDU2LjggTCA2OS4yIDUzLjQgTCA2Ny45IDQ5LjkgTCA2Ny4zIDQ4LjMgTCA2Ni44IDQ2LjcgTCA2Ni42IDQ1LjAgTCA2Ni41IDQzLjQgTCA2Ni41IDQxLjggTCA2Ni44IDQwLjMgTCA2Ny4yIDM4LjkgTCA2Ny44IDM3LjUgTCA2OC42IDM2LjQgTCA2OS41IDM1LjMgTCA3MC41IDM0LjQgTCA3MS42IDMzLjcgTCA3Mi45IDMzLjIgTCA3NC4yIDMyLjkgTCA3NS42IDMyLjggTCA3Ny4wIDMyLjkgTCA3OC41IDMzLjEgTCA4MC4wIDMzLjYgTCA4MS40IDM0LjMgTCA4Mi44IDM1LjEgTCA4NC4xIDM2LjEgTCA4NS40IDM3LjMgTCA4Ni41IDM4LjYgTCA4Ny42IDQwLjAgTCA4OC41IDQxLjUgTCA4OS4zIDQzLjEgTCA5MC44IDQ2LjkgTCA5Mi4yIDUwLjggTCA5My43IDU0LjYiLz48cGF0aCBkPSJNIDY5LjMgODEuOCBMIDY4LjAgNzguMSBMIDY2LjcgNzQuNCBMIDY1LjQgNzAuNyBMIDY0LjEgNjcuMCBMIDYyLjcgNjMuMyBMIDYxLjMgNTkuNyBMIDU5LjkgNTYuMCBMIDU4LjUgNTIuNCBMIDU3LjkgNTAuMyBMIDU3LjQgNDguMiBMIDU3LjMgNDYuMCBMIDU3LjUgNDMuOCBMIDU3LjkgNDEuNyBMIDU4LjYgMzkuNiBMIDU5LjYgMzcuNiBMIDYwLjggMzUuOCBMIDYyLjMgMzQuMCBMIDYzLjkgMzIuNSBMIDY1LjggMzEuMSBMIDY3LjggMzAuMCBMIDcwLjAgMjkuMSBMIDcyLjIgMjguNCBMIDc0LjYgMjguMCBMIDc2LjkgMjcuOCBMIDc5LjMgMjcuOSBMIDgxLjYgMjguMyBMIDgzLjkgMjguOSBMIDg2LjEgMjkuOCBMIDg4LjEgMzAuOSBMIDkwLjAgMzIuMiBMIDkxLjYgMzMuNyBMIDkzLjEgMzUuNCBMIDk0LjMgMzcuMiBMIDk1LjMgMzkuMiBMIDk2LjcgNDIuNiBMIDk4LjEgNDYuMSBMIDk5LjUgNDkuNSBMIDEwMC45IDUyLjkiLz48cGF0aCBkPSJNIDY1LjggODUuOSBMIDY0LjUgODIuNiBMIDYzLjMgNzkuMyBMIDYyLjEgNzYuMCBMIDYwLjkgNzIuNyBMIDU5LjcgNjkuNCBMIDU4LjUgNjYUxMSBMIDU3LjMgNjIuNyBMIDU2LjIgNTkuNCBMIDU1LjAgNTYuMSBMIDU0LjIgNTMuMiBMIDUzLjggNTAuMiBMIDUzLjcgNDcuMiBMIDUzLjkgNDQuMSBMIDU0LjYgNDEuMiBMIDU1LjUgMzguMyBMIDU2LjggMzUuNSBMIDU4LjQgMzMuMCBMIDYwLjMgMzAuNiBMIDYyLjQgMjguNSBMIDY0LjggMjYuNyBMIDY3LjQgMjUuMiBMIDcwLjEgMjQuMCBMIDczLjAgMjMuMiBMIDc2LjAgMjIuNyBMIDc4LjkgMjIuNiBMIDgxLjkgMjIuOSBMIDg0LjkgMjMuNSBMIDg3LjcgMjQuNCBMIDkwLjQgMjUuNyBMIDkzLjAgMjcuNCBMIDk1LjMgMjkuMyBMIDk3LjQgMzEuNSBMIDk5LjIgMzMuOSBMIDEwMC44IDM2LjUgTCAxMDIuMCAzOS4zIEwgMTAzLjIgNDIuNyBMIDEwNC40IDQ2LjEgTCAxMDUuNiA0OS41IEwgMTA2LjggNTIuOSBMIDEwOC4wIDU2LjMgTCAxMDkuMiA1OS43IEwgMTEwLjQgNjMuMSBMIDExMS41IDY2LjUgTCAxMTIuNyA3MC4wIEwgMTEzLjggNzMuNCBMIDExNS4wIDc2LjggTCAxMTYuMSA4MC4yIEwgMTE3LjIgODMuNiBMIDExOC4zIDg3LjEgTCAxMTkuNCA5MC41Ii8+PHBhdGggZD0iTSA1My45IDc0LjIgTCA1Mi43IDcwLjYgTCA1MS41IDY2LjkgTCA1MC4zIDYzLjMgTCA0OS4xIDU5LjYgTCA0OC4yIDU2LjEgTCA0Ny43IDUyLjYgTCA0Ny42IDQ4LjkgTCA0OC4wIDQ1LjMgTCA0OC44IDQxLjcgTCA1MC4wIDM4LjIgTCA1MS42IDM0LjkgTCA1My42IDMxLjggTCA1NS45IDI4LjkgTCA1OC42IDI2LjMgTCA2MS41IDI0LjEgTCA2NC43IDIyLjIgTCA2OC4wIDIwLjcgTCA3MS41IDE5LjUgTCA3NS4xIDE4LjkgTCA3OC43IDE4LjYgTCA4Mi4zIDE4LjggTCA4NS44IDE5LjQgTCA4OS4yIDIwLjQgTCA5Mi40IDIxLjkgTCA5NS40IDIzLjcgTCA5OC4xIDI1LjkgTCAxMDAuNSAyOC40IEwgMTAyLjYgMzEuMyBMIDEwNC4zIDM0LjMgTCAxMDUuNiAzNy42IEwgMTA2LjcgNDAuOSBMIDEwNy44IDQ0LjIgTCAxMDguOSA0Ny41IEwgMTEwLjAgNTAuOSBMIDExMS4xIDU0LjIgTCAxMTIuMiA1Ny41IEwgMTEzLjQgNjAuOSBMIDExNC41IDY0LjIgTCAxMTUuNyA2Ny41IEwgMTE2LjkgNzAuOSBMIDExOC4xIDc0LjIgTCAxMTkuMyA3Ny41IEwgMTIwLjUgODAuOSBMIDEyMS43IDg0LjIgTCAxMjMuMCA4Ny41Ii8+PHBhdGggZD0iTSA1Mi4zIDY4LjEgTCA1MC42IDY0LjAgTCA0OS4wIDU5LjkgTCA0Ny40IDU1LjcgTCA0Ny4xIDU0LjcgTCA0Ny4xIDUzLjYgTCA0Ny40IDUyLjUgTCA0OC4wIDUxLjIgTCA0OC45IDUwLjAgTCA1MC4wIDQ4LjcgTCA1MS41IDQ3LjQgTCA1My4xIDQ2LjIgTCA1NS4wIDQ1LjAgTCA1Ny4wIDQzLjggTCA1OS4yIDQyLjcgTCA2MS41IDQxLjggTCA2My45IDQwLjkgTCA2Ni40IDQwLjEgTCA2OC44IDM5LjUgTCA3MS4yIDM5LjAgTCA3My42IDM4LjYgTCA3NS45IDM4LjQgTCA3OC4wIDM4LjQgTCA3OS45IDM4LjUgTCA4MS43IDM4LjggTCA4My4yIDM5LjIgTCA4NC41IDM5LjggTCA4NS42IDQwLjUgTCA4Ni4zIDQxLjMgTCA4Ni44IDQyLjMgTCA4OC4xIDQ2LjEgTCA4OS40IDQ5LjkiLz48cGF0aCBkPSJNIDU4LjMgNTYuMCBMIDU2LjUgNTEuNSBMIDU0LjggNDcuMCBMIDU0LjUgNDYuMiBMIDU0LjQgNDUuMyBMIDU0LjUgNDQuMyBMIDU0LjggNDMuNCBMIDU1LjMgNDIuNCBMIDU2LjAgNDEuNCBMIDU2LjkgNDAuNCBMIDU4LjAgMzkuNSBMIDU5LjIgMzguNiBMIDYwLjYgMzcuNyBMIDYyLjEgMzcuMCBMIDYzLjggMzYuMyBMIDY1LjUgMzUuNiBMIDY3LjIgMzUuMSBMIDY5LjAgMzQuNyBMIDcwLjggMzQuNCBMIDcyLjYgMzQuMiBMIDc0LjMgMzQuMSBMIDc2LjAgMzQuMiBMIDc3LjYgMzQuMyBMIDc5LjAgMzQuNiBMIDgwLjMgMzUuMCBMIDgxLjUgMzUuNSBMIDgyLjQgMzYuMSBMIDgzLjIgMzYuNyBMIDgzLjggMzcuNSBMIDg1LjIgNDEuMSBMIDg2LjcgNDQuNyBMIDg4LjEgNDguMyBMIDg5LjYgNTEuOCIvPjwvc3ZnPg==') center/cover no-repeat !important;opacity:.42 !important;filter:drop-shadow(0 .6px .4px rgba(255,255,255,.26)) !important;}

/* ===== Sozheim+ lang FINAL (globe — universal language mark) — supersedes fingerprint ::before ===== */
.app-header #lang-btn.lang-btn::before{background:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNDAgMTQwIiBmaWxsPSJub25lIiBzdHJva2U9IiMwNjE0MmQiIHN0cm9rZS13aWR0aD0iMS43IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0gMTAzLjAgNjQuMCBMIDEwMi44IDY3LjIgTCAxMDIuNCA3MC40IEwgMTAxLjYgNzMuNiBMIDEwMC41IDc2LjYgTCA5OS4xIDc5LjYgTCA5Ny40IDgyLjMgTCA5NS41IDg0LjkgTCA5My4zIDg3LjMgTCA5MC45IDg5LjUgTCA4OC4zIDkxLjQgTCA4NS42IDkzLjEgTCA4Mi42IDk0LjUgTCA3OS42IDk1LjYgTCA3Ni40IDk2LjQgTCA3My4yIDk2LjggTCA3MC4wIDk3LjAgTCA2Ni44IDk2LjggTCA2My42IDk2LjQgTCA2MC40IDk1LjYgTCA1Ny40IDk0LjUgTCA1NC40IDkzLjEgTCA1MS43IDkxLjQgTCA0OS4xIDg5LjUgTCA0Ni43IDg3LjMgTCA0NC41IDg0LjkgTCA0Mi42IDgyLjMgTCA0MC45IDc5LjYgTCAzOS41IDc2LjYgTCAzOC40IDczLjYgTCAzNy42IDcwLjQgTCAzNy4yIDY3LjIgTCAzNy4wIDY0LjAgTCAzNy4yIDYwLjggTCAzNy42IDU3LjYgTCAzOC40IDU0LjQgTCAzOS41IDUxLjQgTCA0MC45IDQ4LjQgTCA0Mi42IDQ1LjcgTCA0NC41IDQyLjEgTCA0Ni43IDQwLjcgTCA0OS4xIDM4LjUgTCA1MS43IDM2LjYgTCA1NC40IDM0LjkgTCA1Ny40IDMzLjUgTCA2MC40IDMyLjQgTCA2My42IDMxLjYgTCA2Ni44IDMxLjIgTCA3MC4wIDMxLjAgTCA3My4yIDMxLjIgTCA3Ni40IDMxLjYgTCA3OS42IDMyLjQgTCA4Mi42IDMzLjUgTCA4NS42IDM0LjkgTCA4OC4zIDM2LjYgTCA5MC45IDM4LjUgTCA5My4zIDQwLjcgTCA5NS41IDQzLjEgTCA5Ny40IDQ1LjcgTCA5OS4xIDQ4LjQgTCAxMDAuNSA1MS40IEwgMTAxLjYgNTQuNCBMIDEwMi40IDU3LjYgTCAxMDIuOCA2MC44IEwgMTAzLjAgNjQuMCIvPjxwYXRoIGQ9Ik0gNzAgMzEgTCA3MCA5NyIvPjxwYXRoIGQ9Ik0gODMuOSA2NC4wIEwgODMuOCA2Ny4yIEwgODMuNiA3MC40IEwgODMuMyA3My42IEwgODIuOCA3Ni42IEwgODIuMiA3OS42IEwgODEuNSA4Mi4zIEwgODAuNyA4NC45IEwgNzkuOCA4Ny4zIEwgNzguOCA4OS41IEwgNzcuNyA5MS40IEwgNzYuNSA5My4xIEwgNzUuMyA5NC41IEwgNzQuMCA5NS42IEwgNzIuNyA5Ni40IEwgNzEuNCA5Ni44IEwgNzAuMCA5Ny4wIEwgNjguNiA5Ni44IEwgNjcuMyA5Ni40IEwgNjYuMCA5NS42IEwgNjQuNyA5NC41IEwgNjMuNSA5My4xIEwgNjIuMyA5MS40IEwgNjEuMiA4OS41IEwgNjAuMiA4Ny4zIEwgNTkuMyA4NC45IEwgNTguNSA4Mi4zIEwgNTcuOCA3OS42IEwgNTcuMiA3Ni42IEwgNTYuNyA3My42IEwgNTYuNCA3MC40IEwgNTYuMiA2Ny4yIEwgNTYuMSA2NC4wIEwgNTYuMiA2MC44IEwgNTYuNCA1Ny42IEwgNTYuNyA1NC40IEwgNTcuMiA1MS40IEwgNTcuOCA0OC40IEwgNTguNSA0NS43IEwgNTkuMyA0My4xIEwgNjAuMiA0MC43IEwgNjEuMiAzOC41IEwgNjIuMyAzNi42IEwgNjMuNSAzNC45IEwgNjQuNyAzMy41IEwgNjYuMCAzMi40IEwgNjcuMyAzMS42IEwgNjguNiAzMS4yIEwgNzAuMCAzMS4wIEwgNzEuNCAzMS4yIEwgNzIuNyAzMS42IEwgNzQuMCAzMi40IEwgNzUuMyAzMy41IEwgNzYuNSAzNC45IEwgNzcuNyAzNi42IEwgNzguOCAzOC41IEwgNzkuOCA0MC43IEwgODAuNyA0My4xIEwgODEuNSA0NS43IEwgODIuMiA0OC40IEwgODIuOCA1MS40IEwgODMuMyA1NC40IEwgODMuNiA1Ny42IEwgODMuOCA2MC44IEwgODMuOSA2NC4wIi8+PHBhdGggZD0iTSA5NS43IDY0LjAgTCA5NS42IDY3LjIgTCA5NS4yIDcwLjQgTCA5NC42IDczLjYgTCA5My44IDc2LjYgTCA5Mi43IDc5LjYgTCA5MS40IDgyLjMgTCA4OS45IDg0LjkgTCA4OC4yIDg3LjMgTCA4Ni4zIDg5LjUgTCA4NC4zIDkxLjQgTCA4Mi4xIDkzLjEgTCA3OS45IDk0LjUgTCA3Ny41IDk1LjYgTCA3NS4wIDk2LjQgTCA3Mi41IDk2LjggTCA3MC4wIDk3LjAgTCA2Ny41IDk2LjggTCA2NS4wIDk2LjQgTCA2Mi41IDk1LjYgTCA2MC4xIDk0LjUgTCA1Ny45IDkzLjEgTCA1NS43IDkxLjQgTCA1My43IDg5LjUgTCA1MS44IDg3LjMgTCA1MC4xIDg0LjkgTCA0OC42IDgyLjMgTCA0Ny4zIDc5LjYgTCA0Ni4yIDc2LjYgTCA0NS40IDczLjYgTCA0NC44IDcwLjQgTCA0NC40IDY3LjIgTCA0NC4zIDY0LjAgTCA0NC40IDYwLjggTCA0NC44IDU3LjYgTCA0NS40IDU0LjQgTCA0Ni4yIDUxLjQgTCA0Ny4zIDQ4LjQgTCA0OC42IDQ1LjcgTCA1MC4xIDQzLjEgTCA1MS44IDQwLjcgTCA1My43IDM4LjUgTCA1NS43IDM2LjYgTCA1Ny45IDM0LjkgTCA2MC4xIDMzLjUgTCA2Mi41IDMyLjQgTCA2NS4wIDMxLjYgTCA2Ny41IDMxLjIgTCA3MC4wIDMxLjAgTCA3Mi41IDMxLjIgTCA3NS4wIDMxLjYgTCA3Ny41IDMyLjQgTCA3OS45IDMzLjUgTCA4Mi4xIDM0LjkgTCA4NC4zIDM2LjYgTCA4Ni4zIDM4LjUgTCA4OC4yIDQwLjcgTCA4OS45IDQzLjEgTCA5MS40IDQ1LjcgTCA5Mi43IDQ4LjQgTCA5My44IDUxLjQgTCA5NC42IDU0LjQgTCA5NS4yIDU3LjYgTCA5NS42IDYwLjggTCA5NS43IDY0LjAiLz48cGF0aCBkPSJNIDM3IDY0IEwgMTAzIDY0Ii8+PHBhdGggZD0iTSAxMDMuMCA2NC4wIEwgMTAyLjggNjUuNiBMIDEwMi40IDY3LjIgTCAxMDEuNiA2OC44IEwgMTAwLjUgNzAuMyBMIDk5LjEgNzEuOCBMIDk3LjQgNzMuMiBMIDk1LjUgNzQuNSBMIDkzLjMgNzUuNyBMIDkwLjkgNzYuOCBMIDg4LjMgNzcuNyBMIDg1LjYgNzguNiBMIDgyLjYgNzkuMiBMIDc5LjYgNzkuOCBMIDc2LjQgODAuMiBMIDczLjIgODAuNCBMIDcwLjAgODAuNSBMIDY2LjggODAuNCBMIDYzLjYgODAuMiBMIDYwLjQgNzkuOCBMIDU3LjQgNzkuMiBMIDU0LjQgNzguNiBMIDUxLjcgNzcuNyBMIDQ5LjEgNzYsOCBMIDQ2LjcgNzUuNyBMIDQ0LjUgNzQuNSBMIDQyLjYgNzMuMiBMIDQwLjkgNzEuOCBMIDM5LjUgNzAuMyBMIDM4LjQgNjguOCBMIDM3LjYgNjcuMiBMIDM3LjIgNjUuNiBMIDM3LjAgNjQuMCBMIDM3LjIgNjIuNCBMIDM3LjYgNjAuOCBMIDM4LjQgNTkuMiBMIDM5LjUgNTcuNyBMIDQwLjkgNTYuMiBMIDQyLjYgNTQuOCBMIDQ0LjUgNTMuNSBMIDQ2LjcgNTIuMyBMIDQ5LjEgNTEuMiBMIDUxLjcgNTAuMyBMIDU0LjQgNDkuNCBMIDU3LjQgNDguOCBMIDYwLjQgNDguMiBMIDYzLjYgNDcuOCBMIDY2LjggNDcuNiBMIDcwLjAgNDcuNSBMIDczLjIgNDcuNiBMIDc2LjQgNDcuOCBMIDc5LjYgNDguMiBMIDgyLjYgNDguOCBMIDg1LjYgNDkuNCBMIDg4LjMgNTAuMyBMIDkwLjkgNTEuMiBMIDkzLjMgNTIuMyBMIDk1LjUgNTMuNSBMIDk3LjQgNTQuOCBMIDk5LjEgNTYuMiBMIDEwMC41IDU3LjcgTCAxMDEuNiA1OS4yIEwgMTAyLjQgNjAuOCBMIDEwMi44IDYyLjQgTCAxMDMuMCA2NC4wIi8+PHBhdGggZD0iTSA5OC40IDY0LjAgTCA5OC4yIDY2LjcgTCA5Ny44IDY5LjQgTCA5Ny4yIDcyLjAgTCA5Ni4yIDc0LjYgTCA5NS4wIDc3LjEgTCA5My42IDc5LjQgTCA5MS45IDgxLjYgTCA5MC4xIDgzLjYgTCA4OC4wIDg1LjQgTCA4NS44IDg3LjAgTCA4My40IDg4LjQgTCA4MC45IDg5LjYgTCA3OC4yIDkwLjUgTCA3NS41IDkxLjIgTCA3Mi44IDkxLjYgTCA3MC4wIDkxLjcgTCA2Ny4yIDkxLjYgTCA2NC41IDkxLjIgTCA2MS44IDkwLjUgTCA1OS4xIDg5LjYgTCA1Ni42IDg4LjQgTCA1NC4yIDg3LjAgTCA1Mi4wIDg1LjQgTCA0OS45IDgzLjYgTCA0OC4xIDgxLjYgTCA0Ni40IDc5LjQgTCA0NS4wIDc3LjEgTCA0My44IDc0LjYgTCA0Mi44IDcyLjAgTCA0Mi4yIDY5LjQgTCA0MS44IDY2LjcgTCA0MS42IDY0LjAgTCA0MS44IDYxLjMgTCA0Mi4yIDU4LjYgTCA0Mi44IDU2LjAgTCA0My44IDUzLjQgTCA0NS4wIDUwLjkgTCA0Ni40IDQ4LjYgTCA0OC4xIDQ2LjQgTCA0OS45IDQ0LjQgTCA1Mi4wIDQyLjYgTCA1NC4yIDQxLjAgTCA1Ni42IDM5LjYgTCA1OS4xIDM4LjQgTCA2MS44IDM3LjUgTCA2NC41IDM2LjggTCA2Ny4yIDM2LjQgTCA3MC4wIDM2LjMgTCA3Mi44IDM2LjQgTCA3NS41IDM2LjggTCA3OC4yIDM3LjUgTCA4MC45IDM4LjQgTCA4My40IDM5LjYgTCA4NS44IDQxLjAgTCA4OC4wIDQyLjYgTCA5MC4xIDQ0LjQgTCA5MS45IDQ2LjQgTCA5My42IDQ4LjYgTCA5NS4wIDUwLjkgTCA5Ni4yIDUzLjQgTCA5Ny4yIDU2LjAgTCA5Ny44IDU4LjYgTCA5OC4yIDYxLjMgTCA5OC40IDY0LjAiLz48L3N2Zz4=') center/cover no-repeat !important;opacity:.36 !important;filter:drop-shadow(0 .6px .4px rgba(255,255,255,.26)) !important;}

/* ===== Sozheim+ lang FINAL globe v2 (sized to button, ring around code) — supersedes prior ::before ===== */
.app-header #lang-btn.lang-btn::before{background:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNDAgMTQwIiBmaWxsPSJub25lIiBzdHJva2U9IiMwNjE0MmQiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0gMTIwLjAgNzAuMCBMIDExOS44IDc0LjQgTCAxMTkuMiA3OC43IEwgMTE4LjMgODIuOSBMIDExNy4wIDg3LjEgTCAxMTUuMyA5MS4xIEwgMTEzLjMgOTUuMCBMIDExMS4wIDk4LjcgTCAxMDguMyAxMDIuMSBMIDEwNS40IDEwNS40IEwgMTAyLjEgMTA4LjMgTCA5OC43IDExMS4wIEwgOTUuMCAxMTMuMyBMIDkxLjEgMTE1LjMgTCA4Ny4xIDExNy4wIEwgODIuOSAxMTguMyBMIDc4LjcgMTE5LjIgTCA3NC40IDExOS44IEwgNzAuMCAxMjAuMCBMIDY1LjYgMTE5LjggTCA2MS4zIDExOS4yIEwgNTcuMSAxMTguMyBMIDUyLjkgMTE3LjAgTCA0OC45IDExNS4zIEwgNDUuMCAxMTMuMyBMIDQxLjMgMTExLjAgTCA3Ny45IDEwOC4zIEwgMzQuNiAxMDUuNCBMIDMxLjcgMTAyLjEgTCAyOS4wIDk4LjcgTCAyNi43IDk1LjAgTCAyNC43IDkxLjEgTCAyMy4wIDg3LjEgTCAyMS43IDgyLjkgTCAyMC44IDc4LjcgTCAyMC4yIDc0LjQgTCAyMC4wIDcwLjAgTCAyMC4yIDY1LjYgTCAyMC44IDYxLjMgTCAyMS43IDU3LjEgTCAyMy4wIDUyLjkgTCAyNC43IDQ4LjkgTCAyNi43IDQ1LjAgTCAyOS4wIDQxLjMgTCAzMS43IDM3LjkgTCAzNC42IDM0LjYgTCAzNy45IDMxLjcgTCA0MS4zIDI5LjAgTCA0NS4wIDI2LjcgTCA0OC45IDI0LjcgTCA1Mi45IDIzLjAgTCA1Ny4xIDIxLjcgTCA2MS4zIDIwLjggTCA2NS42IDIwLjIgTCA3MC4wIDIwLjAgTCA3NC40IDIwLjIgTCA3OC43IDIwLjggTCA4Mi45IDIxLjcgTCA4Ny4xIDIzLjAgTCA5MS4xIDI0LjcgTCA5NS4wIDI2LjcgTCA5OC43IDI5LjAgTCAxMDIuMSAzMS43IEwgMTA1LjQgMzQuNiBMIDEwOC4zIDM3LjkgTCAxMTEuMCA0MS4zIEwgMTEzLjMgNDUuMCBMIDExNS4zIDQ4LjkgTCAxMTcuMCA1Mi45IEwgMTE4LjMgNTcuMSBMIDExOS4yIDYxLjMgTCAxMTkuOCA2NS42IEwgMTIwLjAgNzAuMCIvPjxwYXRoIGQ9Ik0gNzAgMjAgTCA3MCAxMjAiLz48cGF0aCBkPSJNIDkyLjAgNzAuMCBMIDkxLjkgNzQuNCBMIDkxLjcgNzguNyBMIDkxLjMgODIuOSBMIDkwLjcgODcuMSBMIDg5LjkgOTEuMSBMIDg5LjEgOTUuMCBMIDg4LjAgOTguNyBMIDg2LjkgMTAyLjEgTCA4NS42IDEwNS40IEwgODQuMSAxMDguMyBMIDgyLjYgMTExLjAgTCA4MS4wIDExMy4zIEwgNzkuMyAxMTUuMyBMIDc3LjUgMTE3LjAgTCA3NS43IDExOC4zIEwgNzMuOCAxMTkuMiBMIDcxLjkgMTE5LjggTCA3MC4wIDEyMC4wIEwgNjguMSAxMTkuOCBMIDY2LjIgMTE5LjIgTCA2NC4zIDExOC4zIEwgNjIuNSAxMTcuMCBMIDYwLjcgMTE1LjMgTCA1OS4wIDExMy4zIEwgNTcuNCAxMTEuMCBMIDU1LjkgMTA4LjMgTCA1NC40IDEwNS40IEwgNTMuMSAxMDIuMSBMIDUyLjAgOTguNyBMIDUwLjkgOTUuMCBMIDUwLjEgOTEuMSBMIDQ5LjMgODcuMSBMIDQ4LjcgODIuOSBMIDQ4LjMgNzguNyBMIDQ4LjEgNzQuNCBMIDQ4LjAgNzAuMCBMIDQ4LjEgNjUuNiBMIDQ4LjMgNjEuMyBMIDQ4LjcgNTcuMSBMIDQ5LjMgNTIuOSBMIDUwLjEgNDguOSBMIDUwLjkgNDUuMCBMIDUyLjAgNDEuMyBMIDUzLjEgMzcuOSBMIDU0LjQgMzQuNiBMIDU1LjkgMzEuNyBMIDU3LjQgMjkuMCBMIDU5LjAgMjYuNyBMIDYwLjcgMjQuNyBMIDYyLjUgMjMuMCBMIDY0LjMgMjEuNyBMIDY2LjIgMjAuOCBMIDY4LjEgMjAuMiBMIDcwLjAgMjAuMCBMIDcxLjkgMjAuMiBMIDczLjggMjAuOCBMIDc1LjcgMjEuNyBMIDc3LjUgMjMuMCBMIDc5LjMgMjQuNyBMIDgxLjAgMjYuNyBMIDgyLjYgMjkuMCBMIDg0LjEgMzEuNyBMIDg1LjYgMzQuNiBMIDg2LjkgMzcuOSBMIDg4LjAgNDEuMyBMIDg5LjEgNDUuMCBMIDg5LjkgNDguOSBMIDkwLjcgNTIuOSBMIDkxLjMgNTcuMSBMIDkxLjcgNjEuMyBMIDkxLjkgNjUuNiBMIDkyLjAgNzAuMCIvPjxwYXRoIGQ9Ik0gMTEwLjAgNzAuMCBMIDEwOS44IDc0LjQgTCAxMDkuNCA3OC43IEwgMTA4LjYgODIuOSBMIDEwNy42IDg3LjEgTCAxMDYuMyA5MS4xIEwgMTA0LjYgOTUuMCBMIDEwMi44IDk4LjcgTCAxMDAuNiAxMDIuMSBMIDk4LjMgMTA1LjQgTCA5NS43IDEwOC4zIEwgOTIuOSAxMTEuMCBMIDkwLjAgMTEzLjMgTCA4Ni45IDExNS4zIEwgODMuNyAxMTcuMCBMIDgwLjQgMTE4LjMgTCA3Ni45IDExOS4yIEwgNzMuNSAxMTkuOCBMIDcwLjAgMTIwLjAgTCA2Ni41IDExOS44IEwgNjMuMSAxMTkuMiBMIDU5LjYgMTE4LjMgTCA1Ni4zIDExNy4wIEwgNTMuMSAxMTUuMyBMIDUwLjAgMTEzLjMgTCA0Ny4xIDExMS4wIEwgNDQuMyAxMDguMyBMIDQxLjcgMTA1LjQgTCAzOS40IDEwMi4xIEwgMzcuMiA5OC43IEwgMzUuNCA5NS4wIEwgMzMuNyA5MS4xIEwgMzIuNCA4Ny4xIEwgMzEuNCA4Mi45IEwgMzAuNiA3OC43IEwgMzAuMiA3NC40IEwgMzAuMCA3MC4wIEwgMzAuMiA2NS42IEwgMzAuNiA2MS4zIEwgMzEuNCA1Ny4xIEwgMzIuNCA1Mi45IEwgMzMuNyA0OC45IEwgMzUuNCA0NS4wIEwgMzcuMiA0MS4zIEwgMzkuNCAzNy45IEwgNDEuNyAzNC42IEwgNDQuMyAzMS43IEwgNDcuMSAyOS4wIEwgNTAuMCAyNi43IEwgNTMuMSAyNC43IEwgNTYuMyAyMy4wIEwgNTkuNiAyMS43IEwgNjMuMSAyMC44IEwgNjYuNSAyMC4yIEwgNzAuMCAyMC4wIEwgNzMuNSAyMC4yIEwgNzYuOSAyMC44IEwgODAuNCAyMS43IEwgODMuNyAyMy4wIEwgODYuOSAyNC43IEwgOTAuMCAyNi43IEwgOTIuOSAyOS4wIEwgOTUuNyAzMS43IEwgOTguMyAzNC42IEwgMTAwLjYgMzcuOSBMIDEwMi44IDQxLjMgTCAxMDQuNiA0NS4wIEwgMTA2LjMgNDguOSBMIDEwNy42IDUyLjkgTCAxMDguNiA1Ny4xIEwgMTA5LjQgNjEuMyBMIDEwOS44IDY1LjYgTCAxMTAuMCA3MC4wIi8+PHBhdGggZD0iTSAyMCA3MCBMIDEyMCA3MCIvPjxwYXRoIGQ9Ik0gMTIwLjAgNzAuMCBMIDExOS44IDcyLjIgTCAxMTkuMiA3NC4zIEwgMTE4LjMgNzYuNSBMIDExNy4wIDc4LjYgTCAxMTUuMyA4MC42IEwgMTEzLjMgODIuNSBMIDExMS4wIDg0LjMgTCAxMDguMyA4Ni4xIEwgMTA1LjQgODcuNyBMIDEwMi4xIDg5LjIgTCA5OC43IDkwLjUgTCA5NS4wIDkxLjcgTCA5MS4xIDkyLjcgTCA4Ny4xIDkzLjUgTCA4Mi45IDk0LjEgTCA3OC43IDk0LjYgTCA3NC40IDk0LjkgTCA3MC4wIDk1LjAgTCA2NS42IDk0LjkgTCA2MS4zIDk0LjYgTCA1Ny4xIDk0LjEgTCA1Mi45IDkzLjUgTCA0OC45IDkyLjcgTCA0NS4wIDkxLjcgTCA0MS4zIDkwLjUgTCAzNy45IDg5LjIgTCAzNC42IDg3LjcgTCAzMS43IDg2LjEgTCAyOS4wIDg0LjMgTCAyNi43IDgyLjUgTCAyNC43IDgwLjYgTCAyMy4wIDc4LjYgTCAyMS43IDc2LjUgTCAyMC44IDc0LjMgTCAyMC4yIDcyLjIgTCAyMC4wIDcwLjAgTCAyMC4yIDY3LjggTCAyMC44IDY1LjcgTCAyMS43IDYzLjUgTCAyMy4wIDYxLjQgTCAyNC43IDU5LjQgTCAyNi43IDU3LjUgTCAyOS4wIDU1LjcgTCAzMS43IDUzLjkgTCAzNC42IDUyLjMgTCAzNy45IDUwLjggTCA0MS4zIDQ5LjUgTCA0NS4wIDQ4LjMgTCA0OC45IDQ3LjMgTCA1Mi45IDQ2LjUgTCA1Ny4xIDQ1LjkgTCA2MS4zIDQ1LjQgTCA2NS42IDQ1LjEgTCA3MC4wIDQ1LjAgTCA3NC40IDQ1LjEgTCA3OC43IDQ1LjQgTCA4Mi45IDQ1LjkgTCA4Ny4xIDQ2LjUgTCA5MS4xIDQ3LjMgTCA5NS4wIDQ4LjMgTCA5OC43IDQ5LjUgTCAxMDIuMSA1MC44IEwgMTA1LjQgNTIuMyBMIDEwOC4zIDUzLjkgTCAxMTEuMCA1NS43IEwgMTEzLjMgNTcuNSBMIDExNS4zIDU5LjQgTCAxMTcuMCA2MS40IEwgMTE4LjMgNjMuNSBMIDExOS4yIDY1LjcgTCAxMTkuOCA2Ny44IEwgMTIwLjAgNzAuMCIvPjxwYXRoIGQ9Ik0gMTEzLjUgNzAuMCBMIDExMy4zIDczLjcgTCAxMTIuOCA3Ny41IEwgMTEyLjAgODEuMSBMIDExMC45IDg0LjcgTCAxMDkuNCA4OC4yIEwgMTA3LjcgOTEuNSBMIDEwNS42IDk0LjcgTCAxMDMuMyA5Ny42IEwgMTAwLjggMTAwLjQgTCA5OC4wIDEwMi45IEwgOTUuMCAxMDUuMiBMIDkxLjggMTA3LjIgTCA4OC40IDEwOS4wIEwgODQuOSAxMTAuNCBMIDgxLjMgMTExLjUgTCA3Ny42IDExMi4zIEwgNzMuOCAxMTIuOCBMIDcwLjAgMTEzLjAgTCA2Ni4yIDExMi44IEwgNjIuNCAxMTIuMyBMIDU4LjcgMTExLjUgTCA1NS4xIDExMC40IEwgNTEuNiAxMDkuMCBMIDQ4LjMgMTA3LjIgTCA0NS4wIDEwNS4yIEwgNDIuMCAxMDIuOSBMIDM5LjIgMTAwLjQgTCAzNi43IDk3LjYgTCAzNC40IDk0LjcgTCAzMi4zIDkxLjUgTCAzMC42IDg4LjIgTCAyOS4xIDg0LjcgTCAyOC4wIDgxLjEgTCAyNy4yIDc3LjUgTCAyNi43IDczLjcgTCAyNi41IDcwLjAgTCAyNi43IDY2LjMgTCAyNy4yIDYyLjUgTCAyOC4wIDU4LjkgTCAyOS4xIDU1LjMgTCAzMC42IDUxLjggTCAzMi4zIDQ4LjUgTCAzNC40IDQ1LjMgTCAzNi43IDQyLjQgTCAzOS4yIDM5LjYgTCA0Mi4wIDM3LjEgTCA0NS4wIDM0LjggTCA0OC4yIDMyLjggTCA1MS42IDMxLjAgTCA1NS4xIDI5LjYgTCA1OC43IDI4LjUgTCA2Mi40IDI3LjcgTCA2Ni4yIDI3LjIgTCA3MC4wIDI3LjAgTCA3My44IDI3LjIgTCA3Ny42IDI3LjcgTCA4MS4zIDI4LjUgTCA4NC45IDI5LjYgTCA4OC40IDMxLjAgTCA5MS43IDMyLjggTCA5NS4wIDM0LjggTCA5OC4wIDM3LjEgTCAxMDAuOCAzOS42IEwgMTAzLjMgNDIuNCBMIDEwNS42IDQ1LjMgTCAxMDcuNyA0OC41IEwgMTA5LjQgNTEuOCBMIDExMC45IDU1LjMgTCAxMTIuMCA1OC45IEwgMTEyLjggNjIuNSBMIDExMy4zIDY2LjMgTCAxMTMuNSA3MC4wIi8+PC9zdmc+') center/cover no-repeat !important;inset:0 !important;opacity:.36 !important;filter:drop-shadow(0 .6px .4px rgba(255,255,255,.26)) !important;}

/* ===== Sozheim+ lang FINAL globe v3 (WHITE lines, visible on blue) — supersedes prior ::before ===== */
.app-header #lang-btn.lang-btn::before{background:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNDAgMTQwIiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmZmZmYiIHN0cm9rZS13aWR0aD0iMS42IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0gMTIwLjAgNzAuMCBMIDExOS44IDc0LjQgTCAxMTkuMiA3OC43IEwgMTE4LjMgODIuOSBMIDExNy4wIDg3LjEgTCAxMTUuMyA5MS4xIEwgMTEzLjMgOTUuMCBMIDExMS4wIDk4LjcgTCAxMDguMyAxMDIuMSBMIDEwNS40IDEwNS40IEwgMTAyLjEgMTA4LjMgTCA5OC43IDExMS4wIEwgOTUuMCAxMTMuMyBMIDkxLjEgMTE1LjMgTCA4Ny4xIDExNy4wIEwgODIuOSAxMTguMyBMIDc4LjcgMTE5LjIgTCA3NC40IDExOS44IEwgNzAuMCAxMjAuMCBMIDY1LjYgMTE5LjggTCA2MS4zIDExOS4yIEwgNTcuMSAxMTguMyBMIDUyLjkgMTE3LjAgTCA0OC45IDExNS4zIEwgNDUuMCAxMTMuMyBMIDQxLjMgMTExLjAgTCAzNy45IDEwOC4zIEwgMzQuNiAxMDUuNCBMIDMxLjcgMTAyLjEgTCAyOS4wIDk4LjcgTCAyNi43IDk1LjAgTCAyNC43IDkxLjEgTCAyMy4wIDg3LjEgTCAyMS43IDgyLjkgTCAyMC44IDc4LjcgTCAyMC4yIDc0LjQgTCAyMC4wIDcwLjAgTCAyMC4yIDY1LjYgTCAyMC44IDYxLjMgTCAyMS43IDU3LjEgTCAyMy4wIDUyLjkgTCAyNC43IDQ4LjkgTCAyNi43IDQ1LjAgTCAyOS4wIDQxLjMgTCAzMS43IDM3LjkgTCAzNC42IDM0LjYgTCAzNy45IDIyLjcgTCA0MS4zIDI5LjAgTCA0NS4wIDI2LjcgTCA0OC45IDI0LjcgTCA1Mi45IDIzLjAgTCA1Ny4xIDIxLjcgTCA2MS4zIDIwLjggTCA2NS42IDIwLjIgTCA3MC4wIDIwLjAgTCA3NC40IDIwLjIgTCA3OC43IDIwLjggTCA4Mi45IDIxLjcgTCA4Ny4xIDIzLjAgTCA5MS4xIDI0LjcgTCA5NS4wIDI2LjcgTCA5OC43IDI5LjAgTCAxMDIuMSAzMS43IEwgMTA1LjQgMzQuNiBMIDEwOC4zIDM3LjkgTCAxMTEuMCA0MS4zIEwgMTEzLjMgNDUuMCBMIDExNS4zIDQ4LjkgTCAxMTcuMCA1Mi45IEwgMTE4LjMgNTcuMSBMIDExOS4yIDYxLjMgTCAxMTkuOCA2NS42IEwgMTIwLjAgNzAuMCIvPjxwYXRoIGQ9Ik0gNzAgMjAgTCA3MCAxMjAiLz48cGF0aCBkPSJNIDkyLjAgNzAuMCBMIDkxLjkgNzQuNCBMIDkxLjcgNzguNyBMIDkxLjMgODIuOSBMIDkwLjcgODcuMSBMIDg5LjkgOTEuMSBMIDg5LjEgOTUuMCBMIDg4LjAgOTguNyBMIDg2LjkgMTAyLjEgTCA4NS42IDEwNS40IEwgODQuMSAxMDguMyBMIDgyLjYgMTExLjAgTCA4MS4wIDExMy4zIEwgNzkuMyAxMTUuMyBMIDc3LjUgMTE3LjAgTCA3NS43IDExOC4zIEwgNzMuOCAxMTkuMiBMIDcxLjkgMTE5LjggTCA3MC4wIDEyMC4wIEwgNjguMSAxMTkuOCBMIDY2LjIgMTE5LjIgTCA2NC4zIDExOC4zIEwgNjIuNSAxMTcuMCBMIDYwLjcgMTE1LjMgTCA1OS4wIDExMy4zIEwgNTcuNCAxMTEuMCBMIDU1LjkgMTA4LjMgTCA1NC40IDEwNS40IEwgNTMuMSAxMDIuMSBMIDUyLjAgOTguNyBMIDUwLjkgOTUuMCBMIDUwLjEgOTEuMSBMIDQ5LjMgODcuMSBMIDQ4LjcgODIuOSBMIDQ4LjMgNzguNyBMIDQ4LjEgNzQuNCBMIDQ4LjAgNzAuMCBMIDQ4LjEgNjUuNiBMIDQ4LjMgNjEuMyBMIDQ4LjcgNTcuMSBMIDQ5LjMgNTIuOSBMIDUwLjEgNDguOSBMIDUwLjkgNDUuMCBMIDUyLjAgNDEuMyBMIDUzLjEgMzcuOSBMIDU0LjQgMzQuNiBMIDU1LjkgMzEuNyBMIDU3LjQgMjkuMCBMIDU5LjAgMjYuNyBMIDYwLjcgMjQuNyBMIDYyLjUgMjMuMCBMIDY0LjMgMjEuNyBMIDY2LjIgMjAuOCBMIDY4LjEgMjAuMiBMIDcwLjAgMjAuMCBMIDcxLjkgMjAuMiBMIDczLjggMjAuOCBMIDc1LjcgMjEuNyBMIDc3LjUgMjMuMCBMIDc5LjMgMjQuNyBMIDgxLjAgMjYuNyBMIDgyLjYgMjkuMCBMIDg0LjEgMzEuNyBMIDg1LjYgMzQuNiBMIDg2LjkgMzcuOSBMIDg4LjAgNDEuMyBMIDg5LjEgNDUuMCBMIDg5LjkgNDguOSBMIDkwLjcgNTIuOSBMIDkxLjMgNTcuMSBMIDkxLjcgNjEuMyBMIDkxLjkgNjUuNiBMIDkyLjAgNzAuMCIvPjxwYXRoIGQ9Ik0gMTEwLjAgNzAuMCBMIDEwOS44IDc0LjQgTCAxMDkuNCA3OC43IEwgMTA4LjYgODIuOSBMIDEwNy42IDg3LjEgTCAxMDYuMyA5MS4xIEwgMTA0LjYgOTUuMCBMIDEwMi44IDk4LjcgTCAxMDAuNiAxMDIuMSBMIDk4LjMgMTA1LjQgTCA5NS43IDEwOC4zIEwgOTIuOSAxMTEuMCBMIDkwLjAgMTEzLjMgTCA4Ni45IDExNS4zIEwgODMuNyAxMTcuMCBMIDgwLjQgMTE4LjMgTCA3Ni45IDExOS4yIEwgNzMuNSAxMTkuOCBMIDcwLjAgMTIwLjAgTCA2Ni41IDExOS44IEwgNjMuMSAxMTcuMiBMIDU5LjYgMTE4LjMgTCA1Ni4zIDExNy4wIEwgNTMuMSAxMTUuMyBMIDUwLjAgMTEzLjMgTCA0Ny4xIDExMS4wIEwgNDQuMyAxMDguMyBMIDQxLjcgMTA1LjQgTCAzOS40IDEwMi4xIEwgMzcuMiA5OC43IEwgMzUuNCA5NS4wIEwgMzMuNyA5MS4xIEwgMzIuNCA4Ny4xIEwgMzEuNCA4Mi45IEwgMzAuNiA3OC43IEwgMzAuMiA3NC40IEwgMzAuMCA3MC4wIEwgMzAuMiA2NS42IEwgMzAuNiA2MS4zIEwgMzEuNCA1Ny4xIEwgMzIuNCA1Mi45IEwgMzMuNyA0OC45IEwgMzUuNCA0NS4wIEwgMzcuMiA0MS4zIEwgMzkuNCAzNy45IEwgNDEuNyAzNC42IEwgNDQuMyAzMS43IEwgNDcuMSAyOS4wIEwgNTAuMCAyNi43IEwgNTMuMSAyNC43IEwgNTYuMyAyMy4wIEwgNTkuNiAyMS43IEwgNjMuMSAyMC44IEwgNjYuNSAyMC4yIEwgNzAuMCAyMC4wIEwgNzMuNSAyMC4yIEwgNzYuOSAyMC44IEwgODAuNCAyMS43IEwgODMuNyAyMy4wIEwgODYuOSAyNC43IEwgOTAuMCAyNi43IEwgOTIuOSAyOS4wIEwgOTUuNyAzMS43IEwgOTguMyAzNC42IEwgMTAwLjYgMzcuOSBMIDEwMi44IDQxLjMgTCAxMDQuNiA0NS4wIEwgMTA2LjMgNDguOSBMIDEwNy42IDUyLjkgTCAxMDguNiA1Ny4xIEwgMTA5LjQgNjEuMyBMIDEwOS44IDY1LjYgTCAxMTAuMCA3MC4wIi8+PHBhdGggZD0iTSAyMCA3MCBMIDEyMCA3MCIvPjxwYXRoIGQ9Ik0gMTIwLjAgNzAuMCBMIDExOS44IDcyLjIgTCAxMTkuMiA3NC4zIEwgMTE4LjMgNzYuNSBMIDExNy4wIDc4LjYgTCAxMTUuMyA4MC42IEwgMTEzLjMgODIuNSBMIDExMS4wIDg0LjMgTCAxMDguMyA4Ni4xIEwgMTA1LjQgODcuNyBMIDEwMi4xIDg5LjIgTCA5OC43IDkwLjUgTCA5NS4wIDkxLjcgTCA5MS4xIDkyLjcgTCA4Ny4xIDkzLjUgTCA4Mi45IDk0LjEgTCA3OC43IDk0LjYgTCA3NC40IDk0LjkgTCA3MC4wIDk1LjAgTCA2NS42IDk0LjkgTCA2MS4zIDk0LjYgTCA1Ny4xIDk0LjEgTCA1Mi45IDkzLjUgTCA0OC45IDkyLjcgTCA0NS4wIDkxLjcgTCA0MS4zIDkwLjUgTCAzNy45IDg5LjIgTCAzNC42IDg3LjcgTCAzMS43IDg2LjEgTCAyOS4wIDg0LjMgTCAyNi43IDgyLjUgTCAyNC43IDgwLjYgTCAyMy4wIDc4LjYgTCAyMS43IDc2LjUgTCAyMC44IDc0LjMgTCAyMC4yIDcyLjIgTCAyMC4wIDcwLjAgTCAyMC4yIDY3LjggTCAyMC44IDY1LjcgTCAyMS43IDYzLjUgTCAyMy4wIDYxLjQgTCAyNC43IDU5LjQgTCAyNi43IDU3LjUgTCAyOS4wIDU1LjcgTCAzMS43IDUzLjkgTCAzNC42IDUyLjMgTCAzNy45IDUwLjggTCA0MS4zIDQ5LjUgTCA0NS4wIDQ4LjMgTCA0OC45IDQ3LjMgTCA1Mi45IDQ2LjUgTCA1Ny4xIDQ1LjkgTCA2MS4zIDQ1LjQgTCA2NS42IDQ1LjEgTCA3MC4wIDQ1LjAgTCA3NC40IDQ1LjEgTCA3OC43IDQ1LjQgTCA4Mi45IDQ1LjkgTCA4Ny4xIDQ2LjUgTCA5MS4xIDQ3LjMgTCA5NS4wIDQ4LjMgTCA5OC43IDQ5LjUgTCAxMDIuMSA1MC44IEwgMTA1LjQgNTIuMyBMIDEwOC4zIDUzLjkgTCAxMTEuMCA1NS43IEwgMTEzLjMgNTcuNSBMIDExNS4zIDU5LjQgTCAxMTcuMCA2MS40IEwgMTE4LjMgNjMuNSBMIDExOS4yIDY1LjcgTCAxMTkuOCA2Ny44IEwgMTIwLjAgNzAuMCIvPjxwYXRoIGQ9Ik0gMTEzLjUgNzAuMCBMIDExMy4zIDczLjcgTCAxMTIuOCA3Ny41IEwgMTEyLjAgODEuMSBMIDExMC45IDg0LjcgTCAxMDkuNCA4OC4yIEwgMTA3LjcgOTEuNSBMIDEwNS42IDk0LjcgTCAxMDMuMyA5Ny42IEwgMTAwLjggMTAwLjQgTCA5OC4wIDEwMi45IEwgOTUuMCAxMDUuMiBMIDkxLjggMTA3LjIgTCA4OC40IDEwOS4wIEwgODQuOSAxMTAuNCBMIDgxLjMgMTExLjUgTCA3Ny42IDExMi4zIEwgNzMuOCAxMTIuOCBMIDcwLjAgMTEzLjAgTCA2Ni4yIDExMi44IEwgNjIuNCAxMTIuMyBMIDU4LjcgMTExLjUgTCA1NS4xIDExMC40IEwgNTEuNiAxMDkuMCBMIDQ4LjMgMTA3LjIgTCA0NS4wIDEwNS4yIEwgNDIuMCAxMDIuOSBMIDM5LjIgMTAwLjQgTCAzNi43IDk3LjYgTCAzNC40IDk0LjcgTCAzMi4zIDkxLjUgTCAzMC42IDg4LjIgTCAyOS4xIDg0LjcgTCAyOC4wIDgxLjEgTCAyNy4yIDc3LjUgTCAyNi43IDczLjcgTCAyNi41IDcwLjAgTCAyNi43IDY2LjMgTCAyNy4yIDYyLjUgTCAyOC4wIDU4LjkgTCAyOS4xIDU1LjMgTCAzMC42IDUxLjggTCAzMi4zIDQ4LjUgTCAzNC40IDQ1LjMgTCAzNi43IDQyLjQgTCAzOS4yIDM5LjYgTCA0Mi4wIDM3LjEgTCA0NS4wIDM0LjggTCA0OC4yIDMyLjggTCA1MS42IDMxLjAgTCA1NS4xIDI5LjYgTCA1OC43IDI4LjUgTCA2Mi40IDI3LjcgTCA2Ni4yIDI3LjIgTCA3MC4wIDI3LjAgTCA3My44IDI3LjIgTCA3Ny42IDI3LjcgTCA4MS4zIDI4LjUgTCA4NC45IDI5LjYgTCA4OC40IDMxLjAgTCA5MS43IDMyLjggTCA5NS4wIDM0LjggTCA5OC4wIDM3LjEgTCAxMDAuOCAzOS42IEwgMTAzLjMgNDIuNCBMIDEwNS42IDQ1LjMgTCAxMDcuNyA0OC41IEwgMTA5LjQgNTEuOCBMIDExMC45IDU1LjMgTCAxMTIuMCA1OC45IEwgMTEyLjggNjIuNSBMIDExMy4zIDY2LjMgTCAxMTMuNSA3MC4wIi8+PC9zdmc+') center/cover no-repeat !important;inset:0 !important;opacity:.62 !important;filter:drop-shadow(0 1px 1px rgba(6,20,45,.45)) !important;}
.app-header #lang-btn.lang-btn::after{background:radial-gradient(120% 100% at 33% 24%, rgba(255,255,255,.22), rgba(255,255,255,0) 54%) !important;}

/* ===== Sozheim+ lang FINAL globe v4 (contained inside blob, no clip) — supersedes prior ::before ===== */
.app-header #lang-btn.lang-btn::before{background:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNDAgMTQwIiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmZmZmYiIHN0cm9rZS13aWR0aD0iMS43IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0gMTE0LjAgNzIuMCBMIDExMy44IDc1LjggTCAxMTMuMyA3OS42IEwgMTEyLjUgODMuNCBMIDExMS4zIDg3LjAgTCAxMDkuOSA5MC42IEwgMTA4LjEgOTQuMCBMIDEwNi4wIDk3LjIgTCAxMDMuNyAxMDAuMyBMIDEwMS4xIDEwMy4xIEwgOTguMyAxMDUuNyBMIDk1LjIgMTA4LjAgTCA5Mi4wIDExMC4xIEwgODguNiAxMTEuOSBMIDg1LjAgMTEzLjMgTCA4MS40IDExNC41IEwgNzcuNiAxMTUuMyBMIDczLjggMTE1LjggTCA3MC4wIDExNi4wIEwgNjYuMiAxMTUuOCBMIDYyLjQgMTE1LjMgTCA1OC42IDExNC41IEwgNTUuMCAxMTMuMyBMIDUxLjQgMTExLjkgTCA0OC4wIDExMC4xIEwgNDQuOCAxMDguMCBMIDQxLjcgMTA1LjcgTCAzOC45IDEwMy4xIEwgMzYuMyAxMDAuMyBMIDM0LjAgOTcuMiBMIDMxLjkgOTQuMCBMIDMwLjEgOTAuNiBMIDI4LjcgODcuMCBMIDI3LjUgODMuNCBMIDI2LjcgNzkuNiBMIDI2LjIgNzUuOCBMIDI2LjAgNzIuMCBMIDI2LjIgNjguMiBMIDI2LjcgNjQuNCBMIDI3LjUgNjAuNiBMIDI4LjcgNTcuMCBMIDMwLjEgNTMuNCBMIDMxLjkgNTAuMCBMIDM0LjAgNDYuOCBMIDM2LjMgNDMuNyBMIDM4LjkgNDAuOSBMIDQxLjcgMzguMyBMIDQ0LjggMzYuMCBMIDQ4LjAgMzMuOSBMIDUxLjQgMzIuMSBMIDU1LjAgMzAuNyBMIDU4LjYgMjkuNSBMIDYyLjQgMjguNyBMIDY2LjIgMjguMiBMIDcwLjAgMjguMCBMIDczLjggMjguMiBMIDc3LjYgMjguNyBMIDgxLjQgMjkuNSBMIDg1LjAgMzAuNyBMIDg4LjYgMzIuMSBMIDkyLjAgMzMuOSBMIDk1LjIgMzYuMCBMIDk4LjMgMzguMyBMIDEwMS4xIDQwLjkgTCAxMDMuNyA0My43IEwgMTA2LjAgNDYuOCBMIDEwOC4xIDUwLjAgTCAxMDkuOSA1My40IEwgMTExLjMgNTcuMCBMIDExMi41IDYwLjYgTCAxMTMuMyA2NC40IEwgMTEzLjggNjguMiBMIDExNC4wIDcyLjAiLz48cGF0aCBkPSJNIDcwIDI4IEwgNzAgMTE2Ii8+PHBhdGggZD0iTSA4OS40IDcyLjAgTCA4OS4zIDc1LjggTCA4OS4xIDc5LjYgTCA4OC43IDgzLjQgTCA4OC4yIDg3LjAgTCA4Ny41IDkwLjYgTCA4Ni44IDk0LjAgTCA4NS45IDk3LjIgTCA4NC44IDEwMC4zIEwgODMuNyAxMDMuMSBMIDgyLjQgMTA1LjcgTCA4MS4xIDEwOC4wIEwgNzkuNyAxMTAuMSBMIDc4LjIgMTExLjkgTCA3Ni42IDExMy4zIEwgNzUuMCAxMTQuNSBMIDczLjQgMTE1LjMgTCA3MS43IDExNS44IEwgNzAuMCAxMTYuMCBMIDY4LjMgMTE1LjggTCA2Ni42IDExNS4zIEwgNjUuMCAxMTQuNSBMIDYzLjQgMTEzLjMgTCA2MS44IDExMS45IEwgNjAuMyAxMTAuMSBMIDU4LjkgMTA4LjAgTCA1Ny42IDEwNS43IEwgNTYuMyAxMDMuMSBMIDU1LjIgMTAwLjMgTCA1NC4xIDk3LjIgTCA1My4yIDk0LjAgTCA1Mi41IDkwLjYgTCA1MS44IDg3LjAgTCA1MS4zIDgzLjQgTCA1MC45IDc5LjYgTCA1MC43IDc1LjggTCA1MC42IDcyLjAgTCA1MC43IDY4LjIgTCA1MC45IDY0LjQgTCA1MS4zIDYwLjYgTCA1MS44IDU3LjAgTCA1Mi41IDUzLjQgTCA1My4yIDUwLjAgTCA1NC4xIDQ2LjggTCA1NS4yIDQzLjcgTCA1Ni4zIDQwLjkgTCA1Ny42IDM4LjMgTCA1OC45IDM2LjAgTCA2MC4zIDMzLjkgTCA2MS44IDMyLjEgTCA2My40IDAwLjcgTCA2NS4wIDI5LjUgTCA2Ni42IDI4LjcgTCA2OC4zIDI4LjIgTCA3MC4wIDI4LjAgTCA3MS43IDI4LjIgTCA3My40IDI4LjcgTCA3NS4wIDI5LjUgTCA3Ni42IDMwLjcgTCA3OC4yIDMyLjEgTCA3OS43IDMzLjkgTCA4MS4xIDM2LjAgTCA4Mi40IDM4LjMgTCA4My43IDQwLjkgTCA4NC44IDQzLjcgTCA4NS45IDQ2LjggTCA4Ni44IDUwLjAgTCA4Ny41IDUzLjQgTCA4OC4yIDU3LjAgTCA4OC43IDYwLjYgTCA4OS4xIDY0LjQgTCA4OS4zIDY4LjIgTCA4OS40IDcyLjAiLz48cGF0aCBkPSJNIDEwNS4yIDcyLjAgTCAxMDUuMSA3NS44IEwgMTA0LjcgNzkuNiBMIDEwNC4wIDgzLjQgTCAxMDMuMSA4Ny4wIEwgMTAxLjkgOTAuNiBMIDEwMC41IDk0LjAgTCA5OC44IDk3LjIgTCA5Ny4wIDEwMC4zIEwgOTQuOSAxMDMuMSBMIDkyLjYgMTA1LjcgTCA5MC4yIDEwOC4wIEwgODcuNiAxMTAuMSBMIDg0LjkgMTExLjkgTCA4Mi4wIDExMy4zIEwgNzkuMSAxMTQuNSBMIDc2LjEgMTE1LjMgTCA3My4xIDExNS44IEwgNzAuMCAxMTYuMCBMIDY2LjkgMTE1LjggTCA2My45IDExNS4zIEwgNjAuOSAxMTQuNSBMIDU4LjAgMTEzLjMgTCA1NS4xIDExMS45IEwgNTIuNCAxMTAuMSBMIDQ5LjggMTA4LjAgTCA0Ny40IDEwNS43IEwgNDUuMSAxMDMuMSBMIDQzLjAgMTAwLjMgTCA0MS4yIDk3LjIgTCAzOS41IDk0LjAgTCAzOC4xIDkwLjYgTCAzNi45IDg3LjAgTCAzNi4wIDgzLjQgTCAzNS4zIDc5LjYgTCAzNC45IDc1LjggTCAzNC44IDcyLjAgTCAzNC45IDY4LjIgTCAzNS4zIDY0LjQgTCAzNi4wIDYwLjYgTCAzNi45IDU3LjAgTCAzOC4xIDUzLjQgTCAzOS41IDUwLjAgTCA0MS4yIDQ2LjggTCA0My4wIDQzLjcgTCA0NS4xIDQwLjkgTCA0Ny40IDM4LjMgTCA0OS44IDM2LjAgTCA1Mi40IDMzLjkgTCA1NS4xIDMyLjEgTCA1OC4wIDMwLjcgTCA2MC45IDI5LjUgTCA2My45IDI4LjcgTCA2Ni45IDI4LjIgTCA3MC4wIDI4LjAgTCA3My4xIDI4LjIgTCA3Ni4xIDI4LjcgTCA3OS4xIDI5LjUgTCA4Mi4wIDMwLjcgTCA4NC45IDMyLjEgTCA4Ny42IDMzLjkgTCA5MC4yIDM2LjAgTCA5Mi42IDM4LjMgTCA5NC45IDQwLjkgTCA5Ny4wIDQyLjcgTCA5OC44IDQ2LjggTCAxMDAuNSA1MC4wIEwgMTAxLjkgNTMuNCBMIDEwMy4xIDU3LjAgTCAxMDQuMCA2MC42IEwgMTA0LjcgNjQuNCBMIDEwNS4xIDY4LjIgTCAxMDUuMiA3Mi4wIi8+PHBhdGggZD0iTSAyNiA3MiBMIDExNCA3MiIvPjxwYXRoIGQ9Ik0gMTE0LjAgNzIuMCBMIDExMy44IDczLjkgTCAxMTMuMyA3NS44IEwgMTEyLjUgNzcuNyBMIDExMS4zIDc5LjUgTCAxMDkuOSA4MS4zIEwgMTA4LjEgODMuMCBMIDEwNi4wIDg0LjYgTCAxMDMuNyA4Ni4xIEwgMTAxLjEgODcuNiBMIDk4LjMgODguOSBMIDk1LjIgOTAuMCBMIDkyLjAgOTEuMSBMIDg4LjYgOTEuOSBMIDg1LjAgOTIuNyBMIDgxLjQgOTMuMyBMIDc3LjYgOTMuNyBMIDczLjggOTMuOSBMIDcwLjAgOTQuMCBMIDY2LjIgOTMuOSBMIDYyLjQgOTMuNyBMIDU4LjYgOTMuMyBMIDU1LjAgOTIuNyBMIDUxLjQgOTEuOSBMIDQ4LjAgOTEuMSBMIDQ0LjggOTAuMCBMIDQxLjcgODguOSBMIDM4LjkgODcuNiBMIDM2LjMgODYuMSBMIDM0LjAgODQuNiBMIDMxLjkgODMuMCBMIDMwLjEgODEuMyBMIDI4LjcgNzkuNSBMIDI3LjUgNzcuNyBMIDI2LjcgNzUuOCBMIDI2LjIgNzMuOSBMIDI2LjAgNzIuMCBMIDI2LjIgNzAuMSBMIDI2LjcgNjguMiBMIDI3LjUgNjYuMyBMIDI4LjcgNjQuNSBMIDMwLjEgNjIuNyBMIDMxLjkgNjEuMCBMIDM0LjAgNTkuNCBMIDM2LjMgNTcuOSBMIDM4LjkgNTYuNCBMIDQxLjcgNTUuMSBMIDQ0LjggNTQuMCBMIDQ4LjAgNTIuOSBMIDUxLjQgNTIuMSBMIDU1LjAgNTEuMyBMIDU4LjYgNTAuNyBMIDYyLjQgNTAuMyBMIDY2LjIgNTAuMSBMIDcwLjAgNTAuMCBMIDczLjggNTAuMSBMIDc3LjYgNTAuMyBMIDgxLjQgNTAuNyBMIDg1LjAgNTEuMyBMIDg4LjYgNTIuMSBMIDkyLjAgNTIuOSBMIDk1LjIgNTQuMCBMIDk4LjMgNTUuMSBMIDEwMS4xIDU2LjQgTCAxMDMuNyA1Ny45IEwgMTA2LjAgNTkuNCBMIDEwOC4xIDYxLjAgTCAxMDkuOSA2Mi43IEwgMTExLjMgNjQuNSBMIDExMi41IDY2LjMgTCAxMTMuMyA2OC4yIEwgMTEzLjggNzAuMSBMIDExNC4wIDcyLjAiLz48cGF0aCBkPSJNIDEwOC4zIDcyLjAgTCAxMDguMSA3NS4zIEwgMTA3LjcgNzguNiBMIDEwNy4wIDgxLjggTCAxMDYuMCA4NC45IEwgMTA0LjcgODguMCBMIDEwMy4yIDkwLjkgTCAxMDEuNCA5My43IEwgOTkuMyA5Ni4zIEwgOTcuMSA5OC44IEwgOTQuNiAxMDEuMCBMIDkyLjAgMTAzLjAgTCA4OS4xIDEwNC44IEwgODYuMiAxMDYuMyBMIDgzLjEgMTA3LjYgTCA3OS45IDEwOC42IEwgNzYuNiAxMDkuMyBMIDczLjMgMTA5LjcgTCA3MC4wIDEwOS44IEwgNjYuNyAxMDkuNyBMIDYzLjQgMTA5LjMgTCA2MC4xIDEwOC42IEwgNTYuOSAxMDcuNiBMIDUzLjggMTA2LjMgTCA1MC45IDEwNC44IEwgNDguMCAxMDMuMCBMIDQ1LjQgMTAxLjAgTCA0Mi45IDk4LjggTCA0MC43IDk2LjMgTCAzOC42IDkzLjcgTCAzNi44IDkwLjkgTCAzNS4zIDg4LjAgTCAzNC4wIDg0LjkgTCAzMy4wIDgxLjggTCAzMi4zIDc4LjYgTCAzMS45IDc1LjMgTCAzMS43IDcyLjAgTCAzMS45IDY4LjcgTCAzMi4zIDY1LjQgTCAzMy4wIDYyLjIgTCAzNC4wIDU5LjEgTCAzNS4zIDU2LjAgTCAzNi44IDUzLjEgTCAzOC42IDUwLjMgTCA0MC43IDQ3LjcgTCA0Mi45IDQ1LjIgTCA0NS40IDQxLjAgTCA0OC4wIDQxLjAgTCA1MC45IDM5LjIgTCA1My44IDM3LjcgTCA1Ni45IDM2LjQgTCA2MC4xIDM1LjQgTCA2My40IDM0LjcgTCA2Ni43IDM0LjMgTCA3MC4wIDM0LjIgTCA3My4zIDM0LjMgTCA3Ni42IDM0LjcgTCA3OS45IDM1LjQgTCA4My4xIDM2LjQgTCA4Ni4yIDM3LjcgTCA4OS4xIDM5LjIgTCA5Mi4wIDQxLjAgTCA5NC42IEQzLjAgTCA5Ny4xIDQ1LjIgTCA5OS4zIDQ3LjcgTCAxMDEuNCA1MC4zIEwgMTAzLjIgNTMuMSBMIDEwNC43IDU2LjAgTCAxMDYuMCA1OS4xIEwgMTA3LjAgNjIuMiBMIDEwNy43IDY1LjQgTCAxMDguMSA2OC43IEwgMTA4LjMgNzIuMCIvPjwvc3ZnPg==') center/cover no-repeat !important;inset:0 !important;opacity:.62 !important;filter:drop-shadow(0 1px 1px rgba(6,20,45,.45)) !important;}

/* ===== Sozheim+ lang FINAL globe v5 (clean pole, no meridian stem) — supersedes prior ::before ===== */
.app-header #lang-btn.lang-btn::before{background:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNDAgMTQwIiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmZmZmYiIHN0cm9rZS13aWR0aD0iMS43IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0gMTE0LjAgNzIuMCBMIDExMy45IDc1LjUgTCAxMTMuNSA3OC45IEwgMTEyLjggODIuMyBMIDExMS44IDg1LjYgTCAxMTAuNyA4OC44IEwgMTA5LjIgOTIuMCBMIDEwNy41IDk1LjAgTCAxMDUuNiA5Ny45IEwgMTAzLjUgMTAwLjYgTCAxMDEuMSAxMDMuMSBMIDk4LjYgMTA1LjUgTCA5NS45IDEwNy42IEwgOTMuMCAxMDkuNSBMIDkwLjAgMTExLjIgTCA4Ni44IDExMi43IEwgODMuNiAxMTMuOCBMIDgwLjMgMTE0LjggTCA3Ni45IDExNS41IEwgNzMuNSAxMTUuOSBMIDcwLjAgMTE2LjAgTCA2Ni41IDExNS45IEwgNjMuMSAxMTUuNSBMIDU5LjcgMTE0LjggTCA1Ni40IDExMy44IEwgNTMuMiAxMTIuNyBMIDUwLjAgMTExLjIgTCA0Ny4wIDEwOS41IEwgNDQuMSAxMDcuNiBMIDQxLjQgMTA1LjUgTCAzOC45IDEwMy4xIEwgMzYuNSAxMDAuNiBMIDM0LjQgOTcuOSBMIDMyLjUgOTUuMCBMIDMwLjggOTIuMCBMIDI5LjMgODguOCBMIDI4LjIgODUuNiBMIDI3LjIgODIuMyBMIDI2LjUgNzguOSBMIDI2LjEgNzUuNSBMIDI2LjAgNzIuMCBMIDI2LjEgNjguNSBMIDI2LjUgNjUuMSBMIDI3LjIgNjEuNyBMIDI4LjIgNTguNCBMIDI5LjMgNTUuMiBMIDMwLjggNTIuMCBMIDMyLjUgNDkuMCBMIDM0LjQgNDYuMSBMIDM2LjUgNDMuNCBMIDM4LjkgNDAuOSBMIDQxLjQgMzguNSBMIDQ0LjEgMzYuNCBMIDQ3LjAgMzQuNSBMIDUwLjAgMzIuOCBMIDUzLjIgMzEuMyBMIDU2LjQgMzAuMiBMIDU5LjcgMjkuMiBMIDYzLjEgMjguNSBMIDY2LjUgMjguMSBMIDcwLjAgMjguMCBMIDczLjUgMjguMSBMIDc2LjkgMjguNSBMIDgwLjMgMjkuMiBMIDgzLjYgMzAuMiBMIDg2LjggMzEuMyBMIDkwLjAgMzIuOCBMIDkzLjAgMzQuNSBMIDk1LjkgMzYuNCBMIDk4LjYgMzguNSBMIDEwMS4xIDQwLjkgTCAxMDMuNSA0My40IEwgMTA1LjYgNDYuMSBMIDEwNy41IDQ5LjAgTCAxMDkuMiA1Mi4wIEwgMTEwLjcgNTUuMiBMIDExMS44IDU4LjQgTCAxMTIuOCA2MS43IEwgMTEzLjUgNjUuMSBMIDExMy45IDY4LjUgTCAxMTQuMCA3Mi4wIi8+PHBhdGggZD0iTSA3Ny4wIDcyLjAgTCA3Ny4wIDc1LjUgTCA3Ny4wIDc4LjkgTCA3Ni44IDgyLjMgTCA3Ni43IDg1LjYgTCA3Ni41IDg4LjggTCA3Ni4zIDkyLjAgTCA3Ni4wIDk1LjAgTCA3NS43IDk3LjkgTCA3NS40IDEwMC42IEwgNzUuMCAxMDMuMSBMIDc0LjYgMTA1LjUgTCA3NC4xIDEwNy42IEwgNzMuNyAxMDkuNSBMIDczLjIgMTExLjIgTCA3Mi43IDExMi43IEwgNzIuMiAxMTMuOCBMIDcxLjYgMTE0LjggTCA3MS4xIDExNS41IEwgNzAuNiAxMTUuOSBMIDcwLjAgMTE2LjAgTCA2OS40IDExNS45IEwgNjguOSAxMTUuNSBMIDY4LjQgMTE0LjggTCA2Ny44IDExMy44IEwgNjcuMyAxMTIuNyBMIDY2LjggMTExLjIgTCA2Ni4zIDEwOS41IEwgNjUuOSAxMDcuNiBMIDY1LjQgMTA1LjUgTCA2NS4wIDEwMy4xIEwgNjQuNiAxMDAuNiBMIDY0LjMgOTcuOSBMIDY0LjAgOTUuMCBMIDYzLjcgOTIuMCBMIDYzLjUgODguOCBMIDYzLjMgODUuNiBMIDYzLjIgODIuMyBMIDYzLjAgNzguOSBMIDYzLjAgNzUuNSBMIDYzLjAgNzIuMCBMIDYzLjAgNjguNSBMIDYzLjAgNjUuMSBMIDYzLjIgNjEuNyBMIDYzLjMgNTguNCBMIDYzLjUgNTUuMiBMIDYzLjcgNTIuMCBMIDY0LjAgNDkuMCBMIDY0LjMgNDYuMSBMIDY0LjYgNDMuNCBMIDY1LjAgNDAuOSBMIDY1LjQgMzguNSBMIDY1LjkgMzYuNCBMIDY2LjMgMzQuNSBMIDY2LjggMzIuOCBMIDY3LjMgMzEuMyBMIDY3LjggMzAuMiBMIDY4LjQgMjkuMiBMIDY4LjkgMjguNSBMIDY5LjQgMjguMSBMIDcwLjAgMjguMCBMIDcwLjYgMjguMSBMIDcxLjEgMjguNSBMIDcxLjYgMjkuMiBMIDcyLjIgMzAuMiBMIDcyLjcgMzEuMyBMIDczLjIgMzIuOCBMIDczLjcgMzQuNSBMIDc0LjEgMzYuNCBMIDc0LjYgMzguNSBMIDc1LjAgNDAuOSBMIDc1LjQgNDMuNCBMIDc1LjcgNDYuMSBMIDc2LjAgNDkuMCBMIDc2LjMgNTIuMCBMIDc2LjUgNTUuMiBMIDc2LjcgNTguNCBMIDc2LjggNjEuNyBMIDc3LjAgNjUuMSBMIDc3LjAgNjguNSBMIDc3LjAgNzIuMCIvPjxwYXRoIGQ9Ik0gOTQuMiA3Mi4wIEwgOTQuMSA3NS41IEwgOTMuOSA3OC45IEwgOTMuNSA4Mi4zIEwgOTMuMCA4NS42IEwgOTIuNCA4OC44IEwgOTEuNiA5Mi4wIEwgOTAuNiA5NS4wIEwgODkuNiA5Ny45IEwgODguNCAxMDAuNiBMIDg3LjEgMTAzLjEgTCA4NS43IDEwNS41IEwgODQuMiAxMDcuNiBMIDgyLjYgMTA5LjUgTCA4MS4wIDExMS4yIEwgNzkuMyAxMTIuNyBMIDc3LjUgMTEzLjggTCA3NS42IDExNC44IEwgNzMuOCAxMTUuNSBMIDcxLjkgMTE1LjkgTCA3MC4wIDExNi4wIEwgNjguMSAxMTUuOSBMIDY2LjIgMTE1LjUgTCA2NC40IDExNC44IEwgNjIuNSAxMTMuOCBMIDYwLjcgMTEyLjcgTCA1OS4wIDExMS4yIEwgNTcuNCAxMDkuNSBMIDU1LjggMTA3LjYgTCA1NC4zIDEwNS41IEwgNTIuOSAxMDMuMSBMIDUxLjYgMTAwLjYgTCA1MC40IDk3LjkgTCA0OS40IDk1LjAgTCA0OC40IDkyLjAgTCA0Ny42IDg4LjggTCA0Ny4wIDg1LjYgTCA0Ni41IDgyLjMgTCA0Ni4xIDc4LjkgTCA0NS45IDc1LjUgTCA0NS44IDcyLjAgTCA0NS45IDY4LjUgTCA0Ni4xIDY1LjEgTCA0Ni41IDYxLjcgTCA0Ny4wIDU4LjQgTCA0Ny42IDU1LjIgTCA0OC40IDUyLjAgTCA0OS40IDQ5LjAgTCA1MC40IDQ2LjEgTCA1MS42IDQzLjQgTCA1Mi45IDQwLjkgTCA1NC4zIDM4LjUgTCA1NS44IDM2LjQgTCA1Ny40IDM0LjUgTCA1OS4wIDMyLjggTCA2MC43IDMxLjMgTCA2Mi41IDMwLjIgTCA2NC40IDI5LjIgTCA2Ni4yIDI4LjUgTCA2OC4xIDI4LjEgTCA3MC4wIDI4LjAgTCA3MS45IDI4LjEgTCA3My44IDI4LjUgTCA3NS42IDI5LjIgTCA3Ny41IDMwLjIgTCA3OS4zIDMxLjMgTCA4MS4wIDMyLjggTCA4Mi42IDM0LjUgTCA4NC4yIDM2LjQgTCA4NS43IDM4LjUgTCA4Ny4xIDQwLjkgTCA4OC40IDQzLjQgTCA4OS42IDQ2LjEgTCA5MC42IDQ5LjAgTCA5MS42IDUyLjAgTCA5Mi40IDU1LjIgTCA5My4wIDU4LjQgTCA5My41IDYxLjcgTCA5My45IDY1LjEgTCA5NC4xIDY4LjUgTCA5NC4yIDcyLjAiLz48cGF0aCBkPSJNIDEwNy40IDcyLjAgTCAxMDcuMyA3NS41IEwgMTA2LjkgNzguOSBMIDEwNi40IDgyLjMgTCAxMDUuNiA4NS42IEwgMTA0LjYgODguOCBMIDEwMy4zIDkyLjAgTCAxMDEuOSA5NS4wIEwgMTAwLjMgOTcuOSBMIDk4LjQgMTAwLjYgTCA5Ni40IDEwMy4xIEwgOTQuMyAxMDUuNSBMIDkyLjAgMTA3LjYgTCA4OS41IDEwOS41IEwgODcuMCAxMTEuMiBMIDg0LjMgMTEyLjcgTCA4MS42IDExMy44IEwgNzguNyAxMTQuOCBMIDc1LjkgMTE1LjUgTCA3Mi45IDExNS45IEwgNzAuMCAxMTYuMCBMIDY3LjEgMTE1LjkgTCA2NC4xIDExNS41IEwgNjEuMyAxMTQuOCBMIDU4LjQgMTEzLjggTCA1NS43IDExMi43IEwgNTMuMCAxMTEuMiBMIDUwLjUgMTA5LjUgTCA0OC4wIDEwNy42IEwgNDUuNyAxMDUuNSBMIDQzLjYgMTAzLjEgTCA0MS42IDEwMC42IEwgMzkuNyA5Ny45IEwgMzguMSA5NS4wIEwgMzYuNyA5Mi4wIEwgMzUuNCA4OC44IEwgMzQuNCA4NS42IEwgMzMuNiA4Mi4zIEwgMzMuMSA3OC45IEwgMzIuNyA3NS41IEwgMzIuNiA3Mi4wIEwgMzIuNyA2OC41IEwgMzMuMSA2NS4xIEwgMzMuNiA2MS43IEwgMzQuNCA1OC40IEwgMzUuNCA1NS4yIEwgMzYuNyA1Mi4wIEwgMzguMSA0OS4wIEwgMzkuNyA0Ni4xIEwgNDEuNiA0My40IEwgNDMuNiA0MC45IEwgNDUuNyAzOC41IEwgNDguMCAzNi40IEwgNTAuNSAzNC41IEwgNTMuMCAzMi44IEwgNTUuNyAzMS4zIEwgNTguNCAzMC4yIEwgNjEuMyAyOS4yIEwgNjQuMSAyOC41IEwgNjcuMSAyOC4xIEwgNzAuMCAyOC4wIEwgNzIuOSAyOC4xIEwgNzUuOSAyOC41IEwgNzguNyAyOS4yIEwgODEuNiAzMC4yIEwgODQuMyAzMS4zIEwgODcuMCAzMi44IEwgODkuNSAzNC41IEwgOTIuMCAzNi40IEwgOTQuMyAzOC41IEwgOTYuNCA0MC45IEwgOTguNCA0My40IEwgMTAwLjMgNDYuMSBMIDEwMS45IDQ5LjAgTCAxMDMuMyA1Mi4wIEwgMTA0LjYgNTUuMiBMIDEwNS42IDU4LjQgTCAxMDYuNCA2MS43IEwgMTA2LjkgNjUuMSBMIDEwNy4zIDY4LjUgTCAxMDcuNCA3Mi4wIi8+PHBhdGggZD0iTSAyNiA3MiBMIDExNCA3MiIvPjxwYXRoIGQ9Ik0gMTE0LjAgNzIuMCBMIDExMy45IDczLjcgTCAxMTMuNSA3NS40IEwgMTEyLjggNzcuMSBMIDExMS44IDc4LjggTCAxMTAuNyA4MC40IEwgMTA5LjIgODIuMCBMIDEwNy41IDgzLjUgTCAxMDUuNiA4NC45IEwgMTAzLjUgODYuMyBMIDEwMS4xIDg3LjYgTCA5OC42IDg4LjcgTCA5NS45IDg5LjggTCA5My4wIDkwLjggTCA5MC4wIDkxLjYgTCA4Ni44IDkyLjMgTCA4My42IDkyLjkgTCA4MC4zIDkzLjQgTCA3Ni45IDkzLjcgTCA3My41IDkzLjkgTCA3MC4wIDk0LjAgTCA2Ni41IDkzLjkgTCA2My4xIDkzLjcgTCA1OS43IDkzLjQgTCA1Ni40IDkyLjkgTCA1My4yIDkyLjMgTCA1MC4wIDkxLjYgTCA0Ny4wIDkwLjggTCA0NC4xIDg5LjggTCA0MS40IDg4LjcgTCAzOC45IDg3LjYgTCAzNi41IDg2LjMgTCAzNC40IDg0LjkgTCAzMi41IDgzLjUgTCAzMC44IDgyLjAgTCAyOS4zIDgwLjQgTCAyOC4yIDc4LjggTCAyNy4yIDc3LjEgTCAyNi41IDc1LjQgTCAyNi4xIDczLjcgTCAyNi4wIDcyLjAgTCAyNi4xIDcwLjMgTCAyNi41IDY4LjYgTCAyNy4yIDY2LjkgTCAyOC4yIDY1LjIgTCAyOS4zIDYzLjYgTCAzMC44IDYyLjAgTCAzMi41IDYwLjUgTCAzNC40IDU5LjEgTCAzNi41IDU3LjcgTCAzOC45IDU2LjQgTCA0MS40IDU1LjMgTCA0NC4xIDU0LjIgTCA0Ny4wIDUzLjIgTCA1MC4wIDUyLjQgTCA1My4yIDUxLjcgTCA1Ni40IDUxLjEgTCA1OS43IDUwLjYgTCA2My4xIDUwLjMgTCA2Ni41IDUwLjEgTCA3MC4wIDUwLjAgTCA3My41IDUwLjEgTCA3Ni45IDUwLjMgTCA4MC4zIDUwLjYgTCA4My42IDUxLjEgTCA4Ni44IDUxLjcgTCA5MC4wIDUyLjQgTCA5My4wIDUzLjIgTCA5NS45IDU0LjIgTCA5OC42IDU1LjMgTCAxMDEuMSA1Ni40IEwgMTAzLjUgNTcuNyBMIDEwNS42IDU5LjEgTCAxMDcuNSA2MC41IEwgMTA5LjIgNjIuMCBMIDExMC43IDYzLjYgTCAxMTEuOCA2NS4yIEwgMTEyLjggNjYuOSBMIDExMy41IDY4LjYgTCAxMTMuOSA3MC4zIEwgMTE0LjAgNzIuMCIvPjxwYXRoIGQ9Ik0gMTA4LjMgNzIuMCBMIDEwOC4yIDc1LjAgTCAxMDcuOCA3Ny45IEwgMTA3LjIgODAuOCBMIDEwNi40IDgzLjcgTCAxMDUuNCA4Ni41IEwgMTA0LjEgODkuMiBMIDEwMi42IDkxLjggTCAxMDEuMCA5NC4yIEwgOTkuMSA5Ni42IEwgOTcuMSA5OC44IEwgOTQuOSAxMDAuOCBMIDkyLjUgMTAyLjYgTCA5MC4wIDEwNC4zIEwgODcuNCAxMDUuNyBMIDg0LjYgMTA3LjAgTCA4MS44IDEwOC4wIEwgNzguOSAxMDguOCBMIDc2LjAgMTA5LjQgTCA3My4wIDEwOS43IEwgNzAuMCAxMDkuOCBMIDY3LjAgMTA5LjcgTCA2NC4wIDEwOS40IEwgNjEuMSAxMDguOCBMIDU4LjIgMTA4LjAgTCA1NS40IDEwNy4wIEwgNTIuNiAxMDUuNyBMIDUwLjAgMTA0LjMgTCA0Ny41IDEwMi42IEwgNDUuMSAxMDAuOCBMIDQyLjkgOTguOCBMIDQwLjkgOTYuNiBMIDM5LjAgOTQuMiBMIDM3LjQgOTEuOCBMIDM1LjkgODkuMiBMIDM0LjYgODYuNSBMIDMzLjYgODMuNyBMIDMyLjggODAuOCBMIDMyLjIgNzcuOSBMIDMxLjggNzUuMCBMIDMxLjcgNzIuMCBMIDMxLjggNjkuMCBMIDMyLjIgNjYuMSBMIDMyLjggNjMuMiBMIDMzLjYgNjAuMyBMIDM0LjYgNTcuNSBMIDM1LjkgNTQuOCBMIDM3LjQgNTIuMiBMIDM5LjAgNDkuOCBMIDQwLjkgNDcuNCBMIDQyLjkgNDUuMiBMIDQ1LjEgNDMuMiBMIDQ3LjUgNDEuNCBMIDUwLjAgMzkuNyBMIDUyLjYgMzguMyBMIDU1LjQgMzcuMCBMIDU4LjIgMzYuMCBMIDYxLjEgMzUuMiBMIDY0LjAgMzQuNiBMIDY3LjAgMzQuMyBMIDcwLjAgMzQuMiBMIDczLjAgMzQuMyBMIDc2LjAgMzQuNiBMIDc4LjkgMzUuMiBMIDgxLjggMzYuMCBMIDg0LjYgMzcuMCBMIDg3LjQgMzguMyBMIDkwLjAgMzkuNyBMIDkyLjUgNDEuNCBMIDk0LjkgNDMuMiBMIDk3LjEgNDUuMiBMIDk5LjEgNDcuNCBMIDEwMS4wIDQ5LjggTCAxMDIuNiA1Mi4yIEwgMTA0LjEgNTQuOCBMIDEwNS40IDU3LjUgTCAxMDYuNCA2MC4zIEwgMTA3LjIgNjMuMiBMIDEwNy44IDY2LjEgTCAxMDguMiA2OS4wIEwgMTA4LjMgNzIuMCIvPjwvc3ZnPg==') center/cover no-repeat !important;inset:0 !important;opacity:.62 !important;filter:drop-shadow(0 1px 1px rgba(6,20,45,.45)) !important;}

/* ===== Sozheim+ home: letter counter moved into primary card footer (variant D) ===== */
body.home-page-body .home-nav .big-btn.home-action-card--primary{flex-direction:column;align-items:stretch}
body.home-page-body .home-nav .home-action-card--primary .big-btn__main{display:flex;align-items:center;gap:11px;width:100%}
body.home-page-body .home-nav .big-btn.home-action-card--primary::after{top:40px;transform:translateY(-50%)}
body.home-page-body .home-nav .home-action-card--primary .card-stat{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:12px;padding-top:11px;border-top:1px solid color-mix(in srgb, var(--card-accent) 16%, #eef2f9);color:var(--muted);font-size:12.6px;line-height:1.3;letter-spacing:-.005em}
body.home-page-body .home-nav .home-action-card--primary .card-stat[hidden]{display:none}
body.home-page-body .home-nav .home-action-card--primary .card-stat svg{color:var(--card-accent);flex:0 0 auto}
body.home-page-body .home-nav .home-action-card--primary .card-stat__num{color:var(--card-accent);font-weight:700}
body.home-page-body .home-nav .home-action-card--primary .card-stat__seg{white-space:nowrap}
body.home-page-body .home-nav .home-action-card--primary .card-stat__sep{opacity:.6}

/* ===== Sozheim+ hero — variant B (warm, upright) ===== */
body.home-page-body .home-hero .hero-title{font-style:normal;color:#1f2d3d;font-weight:620;font-size:clamp(1.26rem,4.0vw,1.55rem);line-height:1.24;letter-spacing:-.014em}
body.home-page-body .home-hero .hero-title .hero-title__accent{color:var(--brand);font-weight:720;white-space:nowrap}
body.home-page-body .home-hero .hero-247.home-hero__availability{display:block;font-style:normal;color:#5b6b7f;font-size:clamp(.82rem,3.2vw,.92rem);font-weight:500;line-height:1.3;letter-spacing:.003em;margin:2px auto 0;max-width:20rem;text-wrap:balance}
/* hero B: break by sentence, keep "Ihre Sprache." intact */
body.home-page-body .home-hero .hero-title{text-wrap:normal;text-wrap:pretty}
body.home-page-body .home-hero .hero-title{text-wrap:normal}

/* ===== Sozheim+ home: chat FAB parked on the crisis card's bottom-right corner
   (tuned offset for the fixed phone layout; footer & body keep their base spacing) ===== */
body.home-page-body #bp-chat-fab{bottom:142px !important}

/* ===== Sozheim+: App-Version inline in der Footer-Copyright-Zeile (einzige Quelle: js/usage-tracker.js APP_VERSION) ===== */
.app-footer__version{
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.app-footer__version:empty{ display: none; }

/* ===== Sozheim+ home: soft grey canvas (#eef2f8) so white cards lift off the background ===== */
body.home-page-body,
html:has(body.home-page-body),
body.home-page-body main#main,
body.home-page-body .container,
body.home-page-body .home-hero-stack,
body.home-page-body .hero-section.home-hero,
body.home-page-body .home-nav {
  background-color: #eef2f8 !important;
}

/* ===== Sozheim+ home: primary action = filled brand button (option B), gradient harmonized with the header ===== */
body.home-page-body .home-nav .big-btn.home-action-card--primary{
  background: linear-gradient(135deg, #1e78dc 0%, #0a58ca 100%) !important;
  border-left-color: transparent !important;
  box-shadow: 0 8px 22px rgba(10,82,196,.30), 0 0 0 1px rgba(10,82,196,.10) !important;
}
body.home-page-body .home-nav .big-btn.home-action-card--primary::before{
  background: linear-gradient(110deg, rgba(255,255,255,.12) 0%, transparent 52%) !important;
}
body.home-page-body .home-nav .big-btn.home-action-card--primary::after{
  color: #ffffff !important;
  opacity: .82 !important;
}
body.home-page-body .home-nav .big-btn.home-action-card--primary .big-btn__label{
  color: #ffffff !important;
}
body.home-page-body .home-nav .big-btn.home-action-card--primary .big-btn__sublabel{
  color: rgba(255,255,255,.85) !important;
}
body.home-page-body .home-nav .home-action-card--primary .big-btn-icon-wrap{
  background: rgba(255,255,255,.18) !important;
  box-shadow: 0 0 0 1.5px rgba(255,255,255,.32) !important;
}
body.home-page-body .home-nav .home-action-card--primary .big-btn-icon{
  color: #ffffff !important;
}
body.home-page-body .home-nav .home-action-card--primary .card-stat{
  border-top: 1px solid rgba(255,255,255,.28) !important;
  color: rgba(255,255,255,.88) !important;
}
body.home-page-body .home-nav .home-action-card--primary .card-stat svg{
  color: #ffffff !important;
}
body.home-page-body .home-nav .home-action-card--primary .card-stat__num{
  color: #ffffff !important;
}
body.home-page-body .home-nav .big-btn.home-action-card--primary:hover{
  box-shadow: 0 12px 28px rgba(10,82,196,.34), 0 0 0 1px rgba(10,82,196,.12) !important;
}

/* ===== Sozheim+ home: title rhythm — balanced, even multi-line labels (font size kept for legibility) ===== */
body.home-page-body .home-nav .big-btn.home-action-card .big-btn__label{
  line-height: 1.24;
  text-wrap: balance;
}
body.home-page-body .home-nav .big-btn.home-action-card:not(.home-action-card--primary){
  align-items: center !important;
}

/* ===== Sozheim+ home: crisis card = softer, warmer red (option C) — findable but calmer ===== */
body.home-page-body .home-nav .big-btn.home-action-card--emergency{
  --card-accent: #d76a5f !important;
}
body.home-page-body .home-nav .home-action-card--emergency .big-btn-icon{
  color: #cf5346 !important;
}

/* ===== Sozheim+ letter: consent screen — scannable points + collapsible detail ===== */
#start-card .start-intro{ color:#5b6b7f; }
#start-card .start-points{ list-style:none; margin:14px 0 8px; padding:0; display:flex; flex-direction:column; gap:11px; }
#start-card .start-points li{ display:flex; gap:10px; align-items:flex-start; }
#start-card .start-points svg{ width:18px; height:18px; color:#0a58ca; stroke:currentColor; flex:0 0 auto; margin-top:1px; }
#start-card .start-points span{ font-size:13.5px; line-height:1.4; color:#3f4e60; }
#start-card .start-more{ margin:12px 0 6px; }
#start-card .start-more > summary{ cursor:pointer; color:#0a58ca; font-weight:600; font-size:13.5px; list-style:none; display:inline-flex; align-items:center; gap:5px; padding:2px 0; }
#start-card .start-more > summary::-webkit-details-marker{ display:none; }
#start-card .start-more > summary::after{ content:"\25be"; font-size:.8em; transition:transform .2s ease; }
#start-card .start-more[open] > summary::after{ transform:rotate(180deg); }
#start-card .start-more__body{ margin-top:8px; }
#start-card .start-more__body p{ font-size:12.5px; line-height:1.55; color:#5b6b7f; margin:0 0 8px; }
#start-card .start-more__body p:last-child{ margin-bottom:0; }

/* ===== Sozheim+ letter: pinned bottom action bar (Starten always visible on phones) ===== */
.letter-page #start-card .start-actionbar{
  position: fixed;
  left: 0; right: 0; bottom: 0;
  z-index: 60;
  background: #ffffff;
  border-top: 1px solid #e2e8f1;
  box-shadow: 0 -4px 16px rgba(20,40,80,.08);
  padding: 9px 16px calc(11px + env(safe-area-inset-bottom, 0px));
}
.letter-page #start-card .start-actionbar .start-legal-notice{
  margin: 0 auto 8px;
  text-align: center;
  font-size: 11px;
  line-height: 1.45;
  max-width: 520px;
}
/* the inner actions container was position:sticky (ineffective as last child); neutralise it — the fixed bar pins now */
.letter-flow #start-card .start-actionbar .actions--start{
  position: static !important;
  margin: 0 auto !important;
  padding: 0 !important;
  max-width: 520px;
}
/* clearance so the consent box is never hidden behind the fixed bar */
.letter-page #start-card{ padding-bottom: 128px !important; }
/* consent as compact fine print */
.letter-flow #start-card .consent--card{ margin-top: 14px !important; padding: 12px 14px !important; }
.letter-flow #start-card .consent--card span{ font-size: 12.5px !important; line-height: 1.4 !important; }

/* ===== Sozheim+ letter: release position:fixed from the card's local containing block =====
   #start-card.card had transform/contain/will-change (GPU hints) which trapped the fixed
   action bar inside the card. Clear them; keep a stacking context via isolation for the aura. */
.letter-flow #start-card.card{
  transform: none !important;
  will-change: auto !important;
  contain: none !important;
  isolation: isolate;
}

/* ===== Sozheim+ letter: start screen as app-shell (content fits; scrolls internally only when it overflows) ===== */
.letter-flow #start-card.card:not([hidden]){
  display: flex !important;
  flex-direction: column !important;
  max-height: calc(100dvh - 100px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px)) !important;
  padding: 0 !important;            /* padding moves into the scroll area */
  overflow: hidden !important;
}
.letter-flow #start-card .start-scroll{
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  padding: 20px 20px 14px;
}
/* the action bar is now a real flex footer (was position:fixed) */
.letter-page #start-card .start-actionbar{
  position: static !important;
  left: auto !important; right: auto !important; bottom: auto !important;
  flex: 0 0 auto;
}

/* ===== Sozheim+ letter: tighten start-screen to fit one screen + stop legal-link word-break ===== */
.letter-flow #start-card .start-scroll{ padding: 12px 18px 8px !important; }
.letter-flow #start-card .start-title{ margin: 0 0 7px !important; }
.letter-flow #start-card .start-intro{ margin: 0 0 9px !important; }
.letter-flow #start-card .start-points{ margin: 9px 0 5px !important; gap: 8px !important; }
.letter-flow #start-card .start-more{ margin: 7px 0 3px !important; }
.letter-flow #start-card .start-disclaimer{ margin: 7px 0 !important; }
.letter-flow #start-card .consent--card{ margin-top: 9px !important; padding: 10px 12px !important; gap: 11px !important; }
.letter-flow #start-card .consent--card span{ font-size: 12px !important; line-height: 1.36 !important; }
/* footer: slimmer, and no ugly mid-word hyphenation of the legal links */
.letter-page #start-card .start-actionbar{ padding: 8px 16px calc(9px + env(safe-area-inset-bottom, 0px)) !important; }
.letter-page #start-card .start-actionbar .start-legal-notice{
  margin: 0 auto 7px !important;
  hyphens: none !important;
  -webkit-hyphens: none !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  text-wrap: pretty;
}
.letter-flow #start-card .start-actionbar .btn{ padding: 11px 24px !important; }

/* ===== Sozheim+ letter: legal links stay whole (never break mid-word) ===== */
.letter-page #start-card .start-actionbar .start-legal-notice a{
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  word-wrap: normal !important;
  hyphens: none !important;
  -webkit-hyphens: none !important;
}

/* ===================== EXPLAIN (sozheim-explain/1) — seven blocks, §6 markers, no colours of alarm ===================== */
.letter-flow .explain .result__head { display:flex; align-items:baseline; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.letter-flow .explain__aitag { font-size:.8rem; color:var(--muted); }

.letter-flow .explain__block { margin-top: 22px; }
.letter-flow .explain__block > h3 { margin: 0 0 8px; font-size: 1.05rem; font-weight: 600; color: var(--text); }
.letter-flow .explain__text { margin: 0; font-size: 1.08rem; line-height: 1.6; color: var(--text); }

/* Neutral yes / no / unclear — same weight for all three, no traffic light */
.letter-flow .explain__action { margin:0; padding:10px 14px; border:1px solid #d9dee7; border-radius:12px; font-size:1.08rem; font-weight:600; background:#fff; }

/* Meta (sender, date, Aktenzeichen) */
.letter-flow .explain__meta { display:grid; grid-template-columns:max-content 1fr; gap:4px 14px; margin:10px 0 0; font-size:.95rem; }
.letter-flow .explain__meta dt { color:var(--muted); }
.letter-flow .explain__meta dd { margin:0; }
.letter-flow .explain__amounts { margin-top:10px; }
.letter-flow .explain__amounts h4 { margin:0 0 6px; font-size:.9rem; font-weight:600; color:var(--muted); }

/* Lists of statements */
.letter-flow .explain__list { list-style:none; margin:0; padding:0; display:grid; gap:10px; }
.letter-flow .explain__item { padding:10px 14px; border-left:4px solid #cfd6e2; background:#fff; border-radius:0 10px 10px 0; }
.letter-flow .explain__item-text { margin:0; line-height:1.55; }
.letter-flow .explain__item--status { border-left-color:transparent; background:transparent; padding-left:0; }

/* §6.2 interpretation: seen by eye — muted colour, dashed left border, prefix */
.letter-flow .explain__item.is-inference { border-left:4px dashed #9aa5b5; background:#f6f7f9; color:#4b5563; }
.letter-flow .explain__prefix { font-weight:600; color:#6b7280; }

/* Verbatim values: the letter's characters, never translated */
.letter-flow .explain__verbatim { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size:.95em; background:#eef2f7; padding:1px 6px; border-radius:6px; white-space:nowrap; }
.letter-flow .explain__verbatim-wrap.is-unverified .explain__verbatim { text-decoration: underline dotted #9a7b1f; }
.letter-flow .explain__unverified { display:inline-block; margin-inline-start:6px; font-size:.8rem; color:#7a5c00; background:#fff6da; border-radius:6px; padding:1px 6px; }
.letter-flow .explain__item.is-unverified { border-left-color:#e2c76a; }

/* Collapsed quotes */
.letter-flow .explain__quote { margin-top:6px; font-size:.92rem; }
.letter-flow .explain__quote summary { cursor:pointer; color:var(--brand); }
.letter-flow .explain__quote blockquote { margin:6px 0 0; padding:8px 12px; border-left:3px solid #d9dee7; color:#374151; font-style:italic; }
.letter-flow .explain__quote--rechtsbehelf { margin-top:22px; padding:10px 14px; border:1px solid #d9dee7; border-radius:12px; background:#fff; }
.letter-flow .explain__quote--rechtsbehelf blockquote { font-style:normal; }

/* Banners: coverage and escalation — calm, informational; no red */
.letter-flow .explain__banner { margin-top:14px; padding:12px 14px; border-radius:12px; border:1px solid #d9dee7; background:#f6f8fb; }
.letter-flow .explain__banner p { margin:0 0 6px; line-height:1.55; }
.letter-flow .explain__banner p:last-child { margin-bottom:0; }
.letter-flow .explain__banner-title { font-weight:600; }
.letter-flow .explain__banner--escalation { border-color:#c9d6ea; background:#eef3fa; }
.letter-flow .explain__banner-referral { font-weight:500; }
.letter-flow .explain__note { margin:8px 0 0; font-size:.92rem; color:#4b5563; }
.letter-flow .explain__checknote { margin:10px 0 0; padding-top:10px; border-top:1px dashed #d9dee7; color:#374151; }
.letter-flow .explain__service { font-weight:600; }
.letter-flow .explain__refusal { font-size:1.05rem; line-height:1.6; }
.letter-flow .explain__terms { margin-top:18px; font-size:.92rem; }
.letter-flow .explain__terms summary { cursor:pointer; color:var(--brand); }
.letter-flow .explain__terms dl { display:grid; grid-template-columns:max-content 1fr; gap:4px 14px; margin:8px 0 0; }
.letter-flow .explain__terms dt { font-weight:600; }
.letter-flow .explain__terms dd { margin:0; }

/* Errors: their own card, outside the result */
.letter-flow .explain__error { margin-top:16px; border:1px solid #d9dee7; }
.letter-flow .explain__error p { margin:0 0 12px; line-height:1.6; font-size:1.02rem; }

/* RTL: mirror the left-border markers */
.letter-flow .explain[dir="rtl"] .explain__item { border-left:0; border-right:4px solid #cfd6e2; border-radius:10px 0 0 10px; }
.letter-flow .explain[dir="rtl"] .explain__item.is-inference { border-right-style:dashed; border-right-color:#9aa5b5; }
.letter-flow .explain[dir="rtl"] .explain__item.is-unverified { border-right-color:#e2c76a; }
.letter-flow .explain[dir="rtl"] .explain__quote blockquote { border-left:0; border-right:3px solid #d9dee7; }

/* ---- EXPLAIN hero: "is action required?" is the first thing to see; then the one-line "what it is" ---- */
.letter-flow .explain__hero { margin-top: 10px; padding: 18px 20px; border-radius: 16px; background: #eef3fa; border: 1px solid #c9d6ea; }
.letter-flow .explain__hero-label { margin: 0 0 6px; font-size: .85rem; font-weight: 600; letter-spacing: .02em; text-transform: uppercase; color: #4b5563; }
.letter-flow .explain__hero .explain__action { margin: 0; padding: 0; border: 0; background: transparent; font-size: 1.5rem; line-height: 1.3; font-weight: 700; color: var(--text); }
.letter-flow .explain__hero .explain__action[data-value="no"] { color: #1f4d2b; }
.letter-flow .explain__hero .explain__action[data-value="unclear"] { color: #4b5563; }
.letter-flow .explain__hero-about { margin: 12px 0 0; font-size: 1.12rem; line-height: 1.55; }

/* Title row: smaller on phones so the hero is above the fold */
@media (max-width: 480px) {
  .letter-flow .explain .result__head h2 { font-size: 1.25rem; margin: 0; }
  .letter-flow .explain__aitag { font-size: .72rem; }
  .letter-flow .explain__hero { padding: 14px 16px; }
  .letter-flow .explain__hero .explain__action { font-size: 1.35rem; }
  .letter-flow .explain__hero-about { font-size: 1.05rem; }
  .letter-flow .explain__block { margin-top: 18px; }
  .letter-flow .explain__meta { grid-template-columns: 1fr; gap: 2px; }
  .letter-flow .explain__verbatim { white-space: normal; word-break: break-word; }
}

/* ---- EXPLAIN: action verdict with icon; calm green for "no" only; buttons ---- */
.letter-flow .explain__hero .explain__action { display:flex; align-items:center; gap:12px; }
.letter-flow .explain__action-icon { flex:0 0 auto; width:40px; height:40px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; font-size:1.35rem; font-weight:700; background:#fff; border:2px solid #4b5563; color:#111827; }
.letter-flow .explain__action[data-value="yes"] .explain__action-icon { border-color:#1f3a8a; color:#1f3a8a; }
.letter-flow .explain__action[data-value="no"] .explain__action-icon { border-color:#2e7d4f; color:#2e7d4f; background:#eef8f1; }
.letter-flow .explain__action[data-value="unclear"] .explain__action-icon { border-style:dashed; }
.letter-flow .explain__hero .explain__action[data-value="no"] { color:#1f5a35; }
.letter-flow .explain__hero[data-value="no"], .letter-flow .explain__hero[data-verdict="no"], .letter-flow .explain__hero:has(.explain__action[data-value="no"]) { background:#eef8f1; border-color:#bfe0c9; }
.letter-flow .explain__hero .explain__action-text { font-weight:800; letter-spacing:-.01em; }

.letter-flow .result__head-side { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.letter-flow .explain__tts { padding:8px 14px; font-size:.95rem; display:inline-flex; align-items:center; gap:6px; }
.letter-flow .explain__tts.is-playing { background:#1f3a8a; color:#fff; }
.letter-flow .explain__actions-row { display:flex; gap:10px; width:100%; }
.letter-flow .explain__actions-row .btn { flex:1 1 0; }
@media (max-width: 480px) {
  .letter-flow .explain__action-icon { width:34px; height:34px; font-size:1.15rem; }
  .letter-flow .explain__actions-row { flex-direction:column; }
}
/* RTL: keep the icon leading */
.letter-flow .explain[dir="rtl"] .explain__hero .explain__action { flex-direction:row; }

/* =====================================================================
   EXPLAIN — visual pass (read-aloud button, verdict colours, escalation banner, action buttons)
   Colour is used only where it states a fact: green = "no action", amber = "not determinable",
   blue = "action required" (never red — the block answers "is action needed", not "how serious").
   Every state also carries its own icon (✓ / ? / →), so the meaning survives colour-blindness.
   ===================================================================== */

/* ---- 1. Read-aloud: outlined, secondary to content, 44px touch target, clear playing state ---- */
.letter-flow .explain .result__head { align-items: center; }
.letter-flow .explain .result__head h2 { margin: 0; }
.letter-flow .result__head-side { gap: 10px; }
.letter-flow .explain__tts {
  display: inline-flex; align-items: center; gap: 8px;
  min-height: 44px; padding: 0 16px;
  border: 1.5px solid var(--main-brand-blue); border-radius: 999px;
  background: #fff; color: var(--main-brand-blue);
  font: inherit; font-size: .95rem; font-weight: 600; line-height: 1;
  cursor: pointer; transition: background .15s ease, color .15s ease, box-shadow .15s ease, transform .06s ease;
}
.letter-flow .explain__tts:hover { background: #eef3fb; }
.letter-flow .explain__tts:active { transform: translateY(1px); }
.letter-flow .explain__tts:focus-visible { outline: 3px solid #9cbcf0; outline-offset: 2px; }
.letter-flow .explain__tts-icon { flex: 0 0 auto; }
.letter-flow .explain__tts-icon--stop { display: none; }
.letter-flow .explain__tts.is-playing { background: var(--main-brand-blue); color: #fff; border-color: var(--main-brand-blue); box-shadow: 0 0 0 4px rgba(10, 88, 202, .15); }
.letter-flow .explain__tts.is-playing .explain__tts-icon--play { display: none; }
.letter-flow .explain__tts.is-playing .explain__tts-icon--stop { display: inline; }
@media (max-width: 480px) {
  .letter-flow .explain .result__head { flex-direction: column; align-items: flex-start; gap: 8px; }
  .letter-flow .result__head-side { width: 100%; justify-content: space-between; }
  .letter-flow .explain__tts { min-height: 46px; padding: 0 18px; }
}

/* ---- 2. Verdict: colour states a fact, icon repeats it ---- */
.letter-flow .explain__hero { --verdict: #1f3a8a; --verdict-bg: #eef3fa; --verdict-border: #c9d6ea; background: var(--verdict-bg); border-color: var(--verdict-border); }
.letter-flow .explain__hero[data-verdict="no"], .letter-flow .explain__hero:has(.explain__action[data-value="no"]) { --verdict: #1f6b3a; --verdict-bg: #edf7f0; --verdict-border: #b9dec6; }
.letter-flow .explain__hero[data-verdict="unclear"], .letter-flow .explain__hero:has(.explain__action[data-value="unclear"]) { --verdict: #8a5a00; --verdict-bg: #fbf4e6; --verdict-border: #e6cf9a; }
.letter-flow .explain__hero .explain__action { color: var(--verdict); }
.letter-flow .explain__hero .explain__action[data-value="no"],
.letter-flow .explain__hero .explain__action[data-value="unclear"],
.letter-flow .explain__hero .explain__action[data-value="yes"] { color: var(--verdict); }
.letter-flow .explain__action-icon,
.letter-flow .explain__action[data-value="yes"] .explain__action-icon,
.letter-flow .explain__action[data-value="no"] .explain__action-icon,
.letter-flow .explain__action[data-value="unclear"] .explain__action-icon {
  width: 44px; height: 44px; font-size: 1.45rem;
  color: #fff; background: var(--verdict); border: 0; border-style: solid;
  box-shadow: 0 2px 6px rgba(0, 0, 0, .12);
}
.letter-flow .explain__action[data-value="unclear"] .explain__action-icon { border: 2px dashed #fff; box-shadow: 0 0 0 2px var(--verdict); }
.letter-flow .explain__hero-about { color: var(--text); }

/* ---- 3. Escalation banner: muted brick / terracotta — a different category, not an alarm ---- */
.letter-flow .explain__banner--escalation {
  background: #f8efe9; border: 1px solid #d9b3a0; border-left: 6px solid #a8563a; color: #3b2a22;
}
.letter-flow .explain__banner--escalation .explain__banner-title { display: flex; align-items: center; gap: 8px; color: #8a3f26; font-size: 1.05rem; }
.letter-flow .explain__banner-icon { flex: 0 0 auto; color: #a8563a; }
.letter-flow .explain__banner--escalation .explain__banner-referral { color: #3b2a22; }
.letter-flow .explain__banner--escalation .explain__note { color: #5c453a; }
.letter-flow .explain[dir="rtl"] .explain__banner--escalation { border-left: 1px solid #d9b3a0; border-right: 6px solid #a8563a; }

/* ---- 4. Result actions: primary / outline / tertiary, soft shadow lift ---- */
.letter-flow .explain__actions { gap: 10px; }
.letter-flow .explain__actions .btn { min-height: 48px; font-weight: 700; font-size: 1rem; border-radius: var(--button-radius); transition: transform .08s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease; }
.letter-flow .explain__actions .explain__btn-primary { width: 100%; max-width: 420px; background: var(--main-brand-blue); color: #fff; border: 1px solid var(--main-brand-blue); box-shadow: 0 3px 10px rgba(10, 88, 202, .25); }
.letter-flow .explain__actions .explain__btn-primary:hover { box-shadow: 0 6px 16px rgba(10, 88, 202, .30); transform: translateY(-1px); background: var(--main-brand-blue-dark); }
.letter-flow .explain__actions .explain__btn-primary:active { box-shadow: 0 1px 4px rgba(10, 88, 202, .25); transform: translateY(1px); }
.letter-flow .explain__actions .btn-outline { background: #fff; color: var(--main-brand-blue); border: 1.5px solid var(--main-brand-blue); box-shadow: 0 1px 3px rgba(0, 0, 0, .06); }
.letter-flow .explain__actions .btn-outline:hover { background: #eef3fb; box-shadow: 0 4px 12px rgba(0, 0, 0, .08); transform: translateY(-1px); }
.letter-flow .explain__actions .btn-outline:active { box-shadow: none; transform: translateY(1px); }
.letter-flow .explain__actions .btn-tertiary { background: transparent; color: #4b5563; border: 1.5px solid transparent; box-shadow: none; text-decoration: underline; text-decoration-color: #cbd2dc; text-underline-offset: 4px; }
.letter-flow .explain__actions .btn-tertiary:hover { background: #f3f4f6; text-decoration-color: #4b5563; transform: none; }
.letter-flow .explain__actions .btn-tertiary:active { background: #e5e7eb; }
.letter-flow .explain__actions .btn:focus-visible { outline: 3px solid #9cbcf0; outline-offset: 2px; }
.letter-flow .explain__actions-row { gap: 12px; max-width: 560px; justify-content: center; }
.letter-flow .explain__actions-row .btn { flex: 0 1 auto; padding-left: 22px; padding-right: 22px; white-space: nowrap; }
@media (max-width: 480px) {
  .letter-flow .explain__actions .btn { width: 100%; min-height: 50px; }
  .letter-flow .explain__actions-row { flex-direction: column; gap: 12px; }
  .letter-flow .explain__actions { gap: 12px; }
}

/* ---- Result actions v2: grouped by meaning, every button icon + text, 48px, full width on phones ---- */
.letter-flow .explain__actions { display: flex; flex-direction: column; align-items: center; gap: 12px; padding-top: 22px; }
.letter-flow .explain__actions-group { display: flex; gap: 12px; width: 100%; max-width: 560px; justify-content: center; }
.letter-flow .explain__actions-group--result .btn { flex: 1 1 0; }
.letter-flow .explain__actions-group--next { margin-top: 6px; }
.letter-flow .explain__actions-group--next .btn { width: 100%; max-width: 420px; }
.letter-flow .explain__actions-divider { width: 100%; max-width: 560px; border: 0; border-top: 1px solid #d9dee7; margin: 22px 0 6px; }
.letter-flow .explain__actions-group--exit .btn { width: 100%; max-width: 420px; }

.letter-flow .explain__actions .explain__action-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  min-height: 48px; padding: 0 18px; font-weight: 700; font-size: 1rem; white-space: normal; text-align: center; line-height: 1.2;
}
.letter-flow .explain__actions .explain__action-btn svg { flex: 0 0 auto; }
/* the bottom read-aloud button is a regular outlined action, not the pill from the header */
.letter-flow .explain__actions .explain__tts { border-radius: var(--button-radius); min-height: 48px; font-size: 1rem; font-weight: 700; padding: 0 18px; }
/* exit: outlined, neutral grey — same height and weight as the others, clearly a button */
.letter-flow .explain__actions .explain__btn-exit { color: #374151; border: 1.5px solid #7f8998; /* 3.54:1 on white (WCAG 1.4.11) */ background: #fff; box-shadow: 0 1px 3px rgba(0, 0, 0, .06); }
.letter-flow .explain__actions .explain__btn-exit:hover { background: #f3f4f6; border-color: #6b7280; box-shadow: 0 4px 12px rgba(0, 0, 0, .08); transform: translateY(-1px); }
.letter-flow .explain__actions .explain__btn-exit:active { box-shadow: none; transform: translateY(1px); }


@media (max-width: 480px) {
  .letter-flow .explain__actions { gap: 10px; padding-top: 18px; }
  .letter-flow .explain__actions-group { flex-direction: column; gap: 10px; }
  .letter-flow .explain__actions-group .btn, .letter-flow .explain__actions .explain__tts { width: 100%; max-width: none; min-height: 50px; }
  .letter-flow .explain__actions-group--next { margin-top: 10px; }   /* between groups > inside a group */
  .letter-flow .explain__actions-divider { margin: 26px 0 8px; }
}
@media (max-width: 340px) {
  .letter-flow .explain__actions .explain__action-btn { font-size: .95rem; padding: 0 12px; gap: 8px; }
  .letter-flow .explain__actions .explain__action-btn svg { width: 18px; height: 18px; }
}
/* playing state must win over the outlined action-button rules above */
.letter-flow .explain__actions .explain__tts.is-playing { background: var(--main-brand-blue); color: #fff; border-color: var(--main-brand-blue); box-shadow: 0 0 0 4px rgba(10, 88, 202, .15); }
