/* =============================================================================
   site-v5.css — Scaneo v5 theme for secondary pages
   Loaded LAST on: terms, privacy, thank-you, ask-for-feedback, no-purchase-feedback,
   for-partners / pro-partnery, reports-explanation (EN + CS).
   Derived from index-v5.x (landing). It re-themes the existing page markup by
   remapping the legacy design tokens and restyling shared components, so page
   content, forms and scripts stay untouched.
============================================================================= */

:root {
  /* v5 tokens (same values as the landing page) */
  --ink: #111827;
  --muted: #5b6470;
  --line: #dfe5e3;
  --paper: #fafaf9;
  --mist: #f0f4f2;
  --forest: #07201f;
  --forest-2: #0b2b29;
  --teal: #0f766e;
  --mint: #5eead4;
  --amber-soft: #ffcf86;
  --danger: #b42318;

  /* legacy tokens → v5 palette (inline page styles use these) */
  --green-100: #f0f4f2;
  --green-200: #dfe5e3;
  --green-300: #0f766e;
  --green-500: #0c5f58;
  --green-700: #0b2b29;
  --green-800: #07201f;
  --green-900: #0f766e;
  --green-pale: #d7ebe7;
  --text-dark: #111827;
  --text-body: #2b3440;
  --text-muted: #5b6470;
  --radius: 6px;
  --radius-lg: 8px;
  --shadow-sm: none;
  --shadow-md: 0 18px 40px -28px rgba(7, 32, 31, .45);
  --shadow-lg: 0 28px 70px -48px rgba(7, 32, 31, .6);
}

body {
  font-family: "Geist", system-ui, -apple-system, "Segoe UI", sans-serif;
  color: var(--text-body);
  background: var(--paper);
}
h1, h2, h3, h4, h5 { letter-spacing: 0; color: var(--ink); }
:focus-visible { outline: 2px solid var(--teal); outline-offset: 3px; }
.site-header :focus-visible, .v5-subheader :focus-visible, .site-footer :focus-visible,
#cookie-consent-banner :focus-visible, .hero :focus-visible, .reports-intro :focus-visible { outline-color: var(--mint); }

/* ── Buttons ─────────────────────────────────────────────────────────────── */
.btn { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 22px; border-radius: 6px; font-weight: 650; line-height: 1.2; }
.btn:hover, .btn:active { transform: none; }
.btn-primary { background: #5eead4; color: #07201f; box-shadow: none; }
.btn-primary:hover { background: #7cefdc; box-shadow: none; }
.btn-outline { border: 1px solid var(--line); background: #fff; color: var(--ink); }
.btn-outline:hover { border-color: var(--teal); background: #fff; }
.btn-white { background: #fff; color: var(--ink); border: 1px solid var(--line); box-shadow: none; }
.btn-white:hover { border-color: var(--teal); background: #fff; }
.btn-demo-cta { background: var(--teal); border-color: var(--teal); color: #fff; }
.btn-demo-cta:hover { background: #0c5f58; border-color: #0c5f58; }
.btn-lg { min-height: 52px; padding: 0 28px; font-size: 1rem; }

/* ── Header (existing .site-header markup) ───────────────────────────────── */
.site-header { position: sticky; top: 0; z-index: 100; color: #d7ebe7; background: rgba(7, 32, 31, .95); border-bottom: 1px solid rgba(94, 234, 212, .14); box-shadow: none; backdrop-filter: blur(16px); }
.site-logo { color: #fff; font-size: 21px; }
.site-logo span { color: var(--mint); }
.site-nav a { padding: 10px 14px; border-radius: 6px; font: 500 12px/1 "Geist Mono", ui-monospace, monospace; letter-spacing: .02em; }
.site-nav a.nav-link-order { background: var(--mint); color: var(--forest); font: 650 14px/1 "Geist", sans-serif; }
.nav-link-order:hover { background: #7cefdc; color: var(--forest); }
.nav-link-report { color: #d7ebe7; border: 1px solid rgba(255, 255, 255, .22); }
.nav-link-report:hover { color: #fff; border-color: var(--mint); background: rgba(94, 234, 212, .08); }
.nav-toggle:hover { background: rgba(255, 255, 255, .08); }
.nav-toggle span { background: #fff; }
.lang-switcher { border-left-color: rgba(255, 255, 255, .18); }
.lang-current { color: #d7ebe7; }
.lang-current:hover, .lang-current[aria-expanded="true"] { color: #fff; background: rgba(255, 255, 255, .08); }
.lang-dropdown { background: var(--forest-2); border: 1px solid rgba(94, 234, 212, .25); box-shadow: 0 18px 40px rgba(0, 0, 0, .35); }
.lang-option { color: #d7ebe7; }
.lang-option:hover, .lang-option.active { color: #fff; background: rgba(94, 234, 212, .12); }
@media (max-width: 640px) {
  .site-nav { border-top-color: rgba(94, 234, 212, .14); }
  .lang-option { border-color: rgba(255, 255, 255, .22); }
}

/* ── Light header for pages that had none (legal, thank-you, feedback) ───── */
.v5-subheader { position: sticky; top: 0; z-index: 100; color: #d7ebe7; background: rgba(7, 32, 31, .95); border-bottom: 1px solid rgba(94, 234, 212, .14); backdrop-filter: blur(16px); }
.v5-subheader .v5-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; width: min(1100px, calc(100% - 40px)); min-height: 64px; margin: 0 auto; }
.v5-logo { color: #fff; font-size: 21px; font-weight: 800; }
.v5-logo span { color: var(--mint); }
.v5-subnav { display: flex; align-items: center; gap: 10px; font: 500 12px/1 "Geist Mono", ui-monospace, monospace; }
.v5-subnav a { display: inline-flex; align-items: center; min-height: 36px; padding: 0 12px; border: 1px solid rgba(255, 255, 255, .2); border-radius: 6px; color: #d7ebe7; }
.v5-subnav a:hover { color: #fff; border-color: var(--mint); }
.v5-subnav .v5-lang { min-width: 40px; justify-content: center; font-weight: 600; }

/* ── Hero / intro bands → v5 dark surface ────────────────────────────────── */
.hero, .reports-intro { background: var(--forest); color: #cfe7e1; }
.hero h1, .reports-intro h1, .hero h2, .reports-intro h2 { color: #fff; }
.hero p, .reports-intro p { color: #cfe7e1; }
.hero .btn-outline, .reports-intro .btn-outline, .hero .btn-white, .reports-intro .btn-white { background: transparent; color: #fff; border-color: rgba(255, 255, 255, .32); }
.hero .btn-outline:hover, .reports-intro .btn-outline:hover, .hero .btn-white:hover, .reports-intro .btn-white:hover { border-color: var(--mint); background: rgba(94, 234, 212, .08); }
.section-tag { border-radius: 3px; background: transparent; border: 1px solid currentColor; color: var(--teal); font: 500 11px/1.2 "Geist Mono", monospace; letter-spacing: .12em; }
.reports-intro .section-tag, .hero .section-tag { color: var(--mint); }

/* Cards used on partner / report pages */
.why-card, .guarantee-card, .report-value-card, .demo-card, .accordion-item { border: 1px solid var(--line); border-radius: 8px; box-shadow: none; background: #fff; }
.step-number { border-radius: 50%; background: transparent; border: 1px solid var(--teal); color: var(--teal); font-family: "Geist Mono", monospace; }
.icon-benefit { color: var(--teal); }
.demo-report-preview { border-color: var(--line); border-radius: 6px; }

/* ── Legal / long-form documents ─────────────────────────────────────────── */
.legal-content { max-width: 760px; padding: clamp(40px, 7vw, 72px) 20px 88px; }
.legal-content h1 { font-size: clamp(2rem, 5vw, 3rem); line-height: 1.05; font-weight: 800; margin-bottom: 14px; }
.legal-content .last-updated { color: var(--muted); font: 500 12px/1.5 "Geist Mono", monospace; letter-spacing: .04em; border-bottom: 1px solid var(--line); }
.legal-content h2 { font-size: 1.25rem; font-weight: 700; margin-top: 44px; border-bottom: 1px solid var(--line); scroll-margin-top: 80px; }
.legal-content p, .legal-content li { color: var(--text-body); line-height: 1.75; }
.legal-content a { color: var(--teal); text-underline-offset: 3px; }
.legal-content a:hover { color: #0c5f58; }
.legal-content table { display: block; overflow-x: auto; font-size: .92rem; }
.legal-content table th, .legal-content table td { border-color: var(--line); }
.legal-content table th { background: var(--mist); }

/* ── Thank-you / feedback cards ──────────────────────────────────────────── */
body:has(.thankyou-wrapper), body:has(.feedback-wrapper) { background: var(--mist); }
.thankyou-wrapper, .feedback-wrapper { min-height: calc(100vh - 64px); }
.thankyou-card, .feedback-card { border: 1px solid var(--line); border-radius: 8px; box-shadow: var(--shadow-lg); }
.feedback-logo { display: none; } /* the v5 header already carries the logo */
.checkmark-circle { background: var(--mist); border: 1px solid var(--teal); }
.checkmark-circle svg { stroke: var(--teal); }
.thankyou-card h1 span { color: var(--teal); }
.info-box { border: 1px solid var(--line); border-left: 3px solid var(--teal); background: var(--mist); }
.info-box svg { stroke: var(--teal); }
.back-link { color: var(--muted); }
.back-link:hover { color: var(--teal); }
.feedback-field textarea, .feedback-field input[type="text"], .feedback-field input[type="email"] { border: 1px solid #c9d4d1; border-radius: 6px; }
.feedback-field textarea:focus { border-color: var(--teal); outline: 2px solid rgba(15, 118, 110, .25); outline-offset: 0; }
.reason-row { border-radius: 6px; }
#feedback-success { background: #e7f8f1; border: 1px solid #a7e3cb; color: #064e3b; }
#feedback-error { background: #fdf1ef; border: 1px solid #f3c2bb; color: var(--danger); }
.field-error { color: var(--danger); }

/* ── Newsletter ──────────────────────────────────────────────────────────── */
.newsletter-section { background: var(--paper); border-top: 1px solid var(--line); }
.nl-field input[type="email"], .nl-field select { border: 1px solid #c9d4d1; border-radius: 6px; }
.nl-field input[type="email"]:focus, .nl-field select:focus { border-color: var(--teal); }
.nl-consent-label input[type="checkbox"] { accent-color: var(--teal); }
.nl-message--success { background: #e7f8f1; border: 1px solid #a7e3cb; color: #064e3b; }

/* ── Footer (existing .site-footer markup) ───────────────────────────────── */
.site-footer {
  --text-muted: #9fc3bd;
  --text-dark: #fff;
  color: #9fc3bd;
  background: #041413;
  padding-top: 56px;
}
.footer-top { border-bottom-color: rgba(94, 234, 212, .12); }
.footer-brand .logo { color: #fff; font-size: 21px; }
.footer-brand .logo span { color: var(--mint); }
.footer-brand p { color: #9fc3bd; }
.footer-links-col h5 { color: #fff; font: 600 11px/1.4 "Geist Mono", monospace; letter-spacing: .12em; }
.footer-links-col a, .site-footer address a { color: #9fc3bd; }
.footer-links-col a:hover, .site-footer address a:hover { color: var(--mint); text-decoration: underline; }
.footer-bottom { color: #86aaa4; border-top-color: rgba(94, 234, 212, .12); }

/* ── Cookie banner (behaviour from cookies.20260629.js) ──────────────────── */
#cookie-consent-banner { z-index: 9999; padding: 16px 20px calc(16px + env(safe-area-inset-bottom, 0px)); color: #d7ebe7; background: var(--forest-2); border-top: 1px solid rgba(94, 234, 212, .3); box-shadow: 0 -10px 30px rgba(0, 0, 0, .25); }
.cookie-consent-content { max-width: 1100px; }
.cookie-consent-text h4 { color: #fff; font-size: 16px; }
.cookie-consent-text p { color: #9fc3bd; opacity: 1; font-size: 14px; }
.cookie-consent-text a { color: var(--mint); text-decoration: underline; text-underline-offset: 3px; }
.cookie-btn { min-height: 42px; padding: 0 20px; border-radius: 6px; font-family: inherit; font-weight: 650; border: 1px solid transparent; }
.cookie-btn-accept { background: var(--mint); color: var(--forest); }
.cookie-btn-accept:hover { background: #7cefdc; }
.cookie-btn-deny { background: transparent; color: #fff; border-color: rgba(255, 255, 255, .3); }
.cookie-btn-deny:hover { border-color: var(--mint); background: rgba(94, 234, 212, .08); }

/* ── Partner pages: v5.2 additions ───────────────────────────────────────── */
.v5-section { padding: clamp(56px, 7vw, 88px) 0; background: var(--paper); border-top: 1px solid var(--line); }
.v5-section h2 { font-size: clamp(1.6rem, 3.4vw, 2.4rem); line-height: 1.08; font-weight: 800; margin-bottom: 12px; }
.v5-section .v5-lead { max-width: 64ch; color: var(--muted); margin-bottom: 28px; }
.v5-eyebrow { margin: 0 0 16px; color: var(--teal); font: 500 11px/1.2 "Geist Mono", monospace; letter-spacing: .16em; text-transform: uppercase; }
.v5-grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.v5-card { padding: 24px; border: 1px solid var(--line); border-radius: 8px; background: #fff; }
.v5-card h3 { margin: 0 0 8px; font-size: 1.1rem; }
.v5-card p { margin: 0 0 12px; color: var(--muted); }
.v5-card ul { list-style: disc; padding-left: 20px; color: var(--text-body); line-height: 1.7; }
.v5-card--dashed { border-style: dashed; background: transparent; }
.v5-card h3.v5-mark { margin: 0 0 8px; color: var(--ink); font-size: 24px; font-weight: 800; }
.v5-card h3.v5-mark span { color: var(--teal); }
.v5-link { color: var(--teal); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 720px) { .v5-grid2 { grid-template-columns: 1fr; } }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
}
