/* Projectovod: editorial design, shared by every public surface. */
:root {
  color-scheme: light;
  --pv-page: #fffefa;
  --pv-surface: #fff;
  --pv-ink: #202321;
  --pv-muted: #626b68;
  --pv-line: #d8dcd5;
  --pv-accent: #1455d9;
  --pv-accent-strong: #103e9d;
  --pv-accent-soft: #edf3ff;
  --pv-warm: #1455d9;
  --pv-font: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --pv-radius: 4px;
  --bg: var(--pv-page);
  --surface: var(--pv-surface);
  --ink: var(--pv-ink);
  --muted: var(--pv-muted);
  --line: var(--pv-line);
  --blue: var(--pv-accent);
  --blue-hover: var(--pv-accent-strong);
  --blue-soft: var(--pv-accent-soft);
  --green: var(--pv-accent);
  --soft: var(--pv-accent-soft);
  --radius: 4px;
  --shadow: none;
}
body.site-app {
  margin: 0;
  background: var(--pv-page);
  color: var(--pv-ink);
  font: 17px/1.5 var(--pv-font);
  -webkit-font-smoothing: antialiased;
  --green: var(--pv-accent);
  --soft: var(--pv-accent-soft);
}
.site-app *, .site-app *::before, .site-app *::after { box-sizing: border-box; }
.site-app [hidden] { display: none !important; }
.site-app a { color: var(--pv-accent); text-underline-offset: .18em; text-decoration-thickness: 1px; }
.site-app a:hover { color: var(--pv-warm); }
.site-app :is(button,input,textarea,select) { font: inherit; }
.site-app :is(a,button,input,textarea,select,summary):focus-visible { outline: 3px solid var(--pv-accent); outline-offset: 4px; }
.site-app :is(h1,h2,h3) { color: var(--pv-ink); font-weight: 700; text-wrap: balance; }
.site-app h1 { letter-spacing: -.045em; line-height: 1.04; }
.site-app h2 { letter-spacing: -.035em; line-height: 1.13; }
.site-app p { text-wrap: pretty; }
.site-app :is(.kicker,.eyebrow) { color: var(--pv-muted); font-size: 12px; font-weight: 600; letter-spacing: .1em; line-height: 1.5; }
.site-app :is(.lead,.help-lead) { color: var(--pv-muted); line-height: 1.55; }
.pv-header.product-header { position: relative; z-index: 40; width: 100%; max-width: none; margin: 0; padding: 0; background: rgba(255,255,255,.88); border: 0; border-bottom: 1px solid #dedee5; box-shadow: none; }
.pv-header__inner { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; max-width: 1180px; min-height: 76px; margin: auto; padding: 16px 32px; }
.pv-brand { min-height:44px; display: inline-flex; align-items: center; gap: 10px; flex: 0 0 auto; font-size: 23px; font-weight: 700; letter-spacing: -.05em; text-decoration: none; }
.site-app .pv-brand { color: var(--pv-ink); }
.pv-brand__mark { font-size: 35px; line-height: 1; color: var(--pv-accent); font-weight: 400; }
.pv-nav { display: flex; align-items: center; gap: 25px; min-width: 0; }
.pv-nav.product-nav { margin-left: auto; }
.pv-header .pv-nav__link { display: inline-flex; align-items: center; min-height: 44px; padding: 7px 0; border-radius: 0; color: var(--pv-ink); font: 15px/1.3 var(--pv-font); text-decoration: none; white-space: nowrap; }
.pv-header .pv-nav__link:hover { color: var(--pv-accent); background: transparent; }
.pv-header .pv-nav__link[aria-current=page] { color: var(--pv-accent); box-shadow: inset 0 -2px var(--pv-accent); }
.pv-header__actions { display: flex; align-items: center; gap: 18px; margin-left: 25px; }
.pv-header .pv-action { display: inline-flex; justify-content: center; align-items: center; min-height: 44px; padding: 9px 0; color: var(--pv-accent); background: transparent; border: 0; border-radius: 0; font: 15px/1.3 var(--pv-font); text-decoration: none; white-space: nowrap; cursor: pointer; }
.pv-header .pv-action:hover { color: var(--pv-warm); }
.pv-header .pv-subnav { order: 4; flex: 1 0 100%; padding: 4px 0 0; margin: 0; border: 0; gap: 6px; }
.pv-subnav::before { display: none; }
.pv-header .pv-subnav .pv-nav__link { font-size: 13px; padding: 8px 16px; min-height: 40px; border-radius: 10px; box-shadow: none; }
.pv-subnav .pv-nav__link[aria-current=page] { background: #e9eef7; color: var(--pv-accent); }
.pv-footer.product-footer { display: block; max-width: 1180px; width: 100%; margin: 90px auto 0; padding: 0 32px 30px; border: 0; background: transparent; }
.pv-footer__inner { display: flex; justify-content: space-between; align-items: flex-start; gap: 30px; padding: 26px 0 0; border-top: 1px solid var(--pv-line); }
.site-app .pv-footer__brand { color: var(--pv-ink); font-size: 16px; font-weight: 700; text-decoration: none; }
.pv-footer__nav { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 8px 24px; }
.site-app .pv-footer__link { color: var(--pv-muted); font-size: 12px; line-height: 1.7; text-decoration: none; min-height: 44px; display:inline-flex; align-items:center; }
.pv-footer__link:hover { text-decoration: underline; }
.site-app :is(.button,.action) { display: inline-flex; justify-content: center; align-items: center; gap: 9px; min-height: 48px; padding: 12px 20px; border: 1px solid var(--pv-accent); border-radius: 4px; background: var(--pv-accent); color: white; box-shadow: none; font: 600 15px/1.35 var(--pv-font); text-decoration: none; cursor: pointer; transition: background .15s, color .15s; }
.site-app :is(.button,.action):hover { color: white; border-color: var(--pv-accent-strong); background: var(--pv-accent-strong); transform: none; }
.site-app :is(.button--quiet,.action--quiet) { background: transparent; border-color: #c6cdc6; color: var(--pv-accent); }
.site-app :is(.button--quiet,.action--quiet):hover { background: var(--pv-accent-soft); color: var(--pv-accent); border-color: var(--pv-accent); }
.site-app :is(.button--danger,.action--danger) { background: #a62c22; border-color: #a62c22; color: white; }
.site-app .text-button { color: var(--pv-accent); }
.site-app :is(input:not([type=checkbox]):not([type=radio]),textarea,select) { border-color: #aeb8af; background: #fff; color: var(--pv-ink); border-radius: 3px; box-shadow: none; }
.site-app :is(input,textarea,select):focus { border-color: var(--pv-accent); }
.site-app input[type=checkbox] { accent-color: var(--pv-accent); }
.site-app :is(.field__hint,.guide__small,.privacy) { color: var(--pv-muted); }
.site-app main { max-width: 1440px; padding-inline: 48px; }
/* Working document: navigation, the writing area, then contextual help. */
.site-app .intro { max-width: none; padding: 44px 0 38px; }
.site-app .intro h1 { font-size: clamp(36px,4.4vw,64px); margin: 0 0 18px; }
.site-app .intro p { max-width: 650px; font-size: 18px; color: var(--pv-muted); }
.site-app .workspace { grid-template-columns: 190px minmax(0,1fr) 230px; gap: 34px; border: 0; background: none; align-items: start; }
.site-app :is(.sidebar,.editor,.guide) { background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.site-app .sidebar { padding: 8px 0; }
.site-app .sidebar .eyebrow { margin-bottom: 20px; }
.site-app .step { padding: 13px 10px; border-radius: 3px; border: 0; font-size: 14px; }
.site-app .step[aria-current], .site-app .step.is-active { background: var(--pv-accent-soft); color: var(--pv-accent); }
.site-app .editor { padding: 0 0 28px; min-width: 0; }
.site-app .sync-bar { padding: 12px 0 20px; margin: 0 0 26px; border-bottom: 1px solid var(--pv-line); background: none; flex-wrap: wrap; gap: 12px; }
.site-app .sync-bar>div:last-child { display: flex; flex-wrap: wrap; gap: 3px 16px; }
.site-app .sync-bar .text-button { padding: 4px 0; font-size: 12px; }
.site-app .editor__top { margin-bottom: 28px; }
.site-app #form h2 { font-size: 32px; }
.site-app .editor__description { color: var(--pv-muted); font-size: 17px; }
.site-app .guide { padding: 28px 0 0; }
.site-app .guide__mark { color: var(--pv-warm); font-size: 34px; }
.site-app .guide h2 { font-size: 19px; }
.site-app .guide p { font-size: 14px; line-height: 1.6; }
.site-app .type { border-radius: 4px; box-shadow: none; }
.site-app .type[aria-pressed=true] { border-color: var(--pv-accent); background: var(--pv-accent-soft); }
.site-app .field__label { font-size: 16px; }
.site-app .editor__actions { border-top: 1px solid var(--pv-line); margin-top: 35px; padding-top: 24px; }
.site-app .page-heading { padding: 45px 0 35px; }
.site-app .page-heading h1 { font-size: clamp(38px,5vw,66px); }
.site-app .task-row { background: transparent; border-radius: 0; box-shadow: none; border: 0; border-top: 1px solid var(--pv-line); padding-block: 20px; }
.site-app dialog { border-radius: 6px; border: 1px solid var(--pv-line); box-shadow: 0 20px 70px #20232126; }
/* Articles and landing pages. */
.site-app .help-page { max-width: 1100px; margin: 48px auto 0; padding-inline: 48px; }
.site-app .help-page>h1 { max-width: 920px; font-size: clamp(36px,5.2vw,72px); margin: 12px 0 30px; }
.site-app .help-page .help-lead { max-width: 760px; font-size: 21px; }
.site-app .help-page>section { max-width: 780px; margin: 60px 0; padding: 0; background: none; border: 0; }
.site-app .help-page h2 { font-size: 30px; margin-bottom: 19px; }
.site-app .help-page :is(p,li) { font-size: 18px; line-height: 1.65; }
.site-app .help-page li { margin-bottom: 12px; }
.site-app .help-page details { padding: 18px 0; border: 0; border-bottom: 1px solid var(--pv-line); border-radius: 0; background: transparent; }
.site-app .help-page summary { font-size: 18px; font-weight: 600; cursor: pointer; }
.site-app .public-nav { max-width: 1100px; margin: 15px auto 30px; padding: 0 48px; gap: 12px 24px; border: 0; flex-wrap: wrap; }
.site-app .public-nav a { font-size: 14px; background: none; border-radius: 0; }
/* Sign-in and personal cabinet. */
.site-app .auth-page { max-width: 1000px; min-height: 60vh; padding-top: 65px; padding-bottom: 30px; }
.site-app .auth-page h1 { font-size: clamp(38px,5.5vw,68px); max-width: 750px; margin-bottom: 24px; }
.site-app .auth-page .lead { max-width: 590px; font-size: 20px; margin-bottom: 36px; }
.site-app .auth-form { max-width: 600px; }
.site-app .auth-form>p { color: var(--pv-muted); font-size: 15px; line-height: 1.65; }
.site-app .auth-form input { min-height: 52px; }
.site-app .auth-form input[type=checkbox] { min-height: 0; }
.site-app .auth-form label { margin: 25px 0; }
.site-app .account-section { margin: 38px 0; padding-top: 27px; border-color: var(--pv-line); }
.site-app .account-section h2 { font-size: 25px; }
/* Negotiations: readable scenarios, spacious dialogue and explicit replies. */
.site-app .talk-main { max-width: 1280px; padding-bottom: 40px; }
.site-app .talk-heading { max-width: none; padding: 45px 0 40px; margin: 0; }
.site-app .talk-heading h1 { max-width: 1000px; font-size: clamp(36px,5vw,68px); }
.site-app .talk-heading .lead { max-width: 670px; font-size: 20px; }
.site-app .marketing-hero { padding: 60px 0 55px; gap: 65px; }
.site-app .marketing-hero h1 { font-size: clamp(40px,5.5vw,76px); line-height: 1.04; letter-spacing: -.045em; }
.site-app :is(.hero-demo,.demo-window,.hero-visual) { border-radius: 4px; box-shadow: none; }
.site-app .scenario-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 36px; }
.site-app .scenario-item { padding: 24px; border: 1px solid var(--pv-line); border-top: 2px solid var(--pv-accent); border-radius: 4px; background: var(--pv-surface); box-shadow: none; }
.site-app .scenario-item h2 { font-size: 26px; }
.site-app .scenario-item h2 a { text-decoration: none; }
.site-app .scenario-item p { color: var(--pv-muted); font-size: 16px; }
.site-app .scenario-item .scenario-meta { font-size: 12px; }
.site-app :is(.briefing,.methodology,.results,#practice-content) { max-width: 960px; margin-inline: 0; }
.site-app .briefing { padding: 0; border: 0; background: none; border-radius: 0; }
.site-app :is(.briefing-roles,.briefing-goals) { gap: 40px; background: none; border: 0; border-radius: 0; }
.site-app .briefing-roles { padding: 0 0 30px; border-bottom: 1px solid var(--pv-line); }
.site-app .briefing h2 { font-size: 24px; }
.site-app .briefing-context { padding-top: 35px; }
.site-app .briefing-lesson { padding: 24px; background: var(--pv-accent-soft); border-radius: 3px; }
.site-app .briefing-start { margin-top: 35px; }
.site-app .messenger { margin-top: 30px; border: 1px solid var(--pv-line); border-radius: 6px; box-shadow: none; background: white; }
.site-app .chat-header { background: #fff; border-color: var(--pv-line); }
.site-app .chat-header h1 { letter-spacing: -.025em; }
.site-app .chat-layout { background: #f8f9f5; }
.site-app .chat-messages { background: none; }
.site-app .bubble { border-radius: 4px 16px 16px 16px; background: #fff; box-shadow: none; border: 1px solid var(--pv-line); }
.site-app .bubble--self { background: var(--pv-accent-soft); border-color: #dce6fc; border-radius: 16px 4px 16px 16px; }
.site-app .reply-option { padding: 18px 48px 18px 21px; border-radius: 4px; box-shadow: none; border-color: #bdcce9; color: var(--pv-accent-strong); background: white; }
.site-app .reply-option:hover { background: var(--pv-accent-soft); border-color: var(--pv-accent); }
.site-app .chat-summary { background: transparent; }
.site-app :is(.empty-practice,.review-stack,.result-summary,.result-card,.observation) { border-radius: 4px; box-shadow: none; }
.site-app :is(.talk-subsection,.marketing-section) { margin-top: 60px; padding-block: 35px; }
.site-app .notice { background: var(--pv-ink); border-radius: 4px; }
@media (max-width:1100px) {
  .pv-header__inner { gap: 12px 24px; }
  .pv-header__actions { margin-left: 10px; }
  .pv-nav { gap: 20px; }
  .site-app main { padding-inline: 28px; }
  .site-app .workspace { grid-template-columns: 160px minmax(0,1fr); gap: 30px; }
  .site-app .guide { grid-column: 2; position: static; max-width: 600px; padding-top: 0; }
  .site-app .scenario-list { gap: 24px; }
  .pv-footer.product-footer { padding-inline: 32px; }
}
@media (max-width:760px) {
  .pv-header__inner { min-height: 76px; padding: 16px 20px; gap: 12px 24px; }
  .pv-brand { font-size: 21px; }
  .pv-brand__mark { font-size: 29px; }
  .pv-header__actions { margin-left: auto; gap: 12px; }
  .pv-header .pv-action { font-size: 13px; }
  .pv-nav.product-nav { order: 3; width: 100%; margin: 0; gap: 26px; }
  .pv-header .pv-nav__link { min-height: 44px; font-size: 14px; }
  .pv-header .pv-subnav { padding-top: 4px; overflow: visible; flex-wrap: wrap; gap: 6px; }
  .pv-subnav::before { display: none; }
  .site-app main { padding-inline: 20px; }
  .site-app .intro { padding-top: 32px; }
  .site-app .workspace { display: block; }
  .site-app .sidebar { position: static; padding: 0 0 22px; }
  .site-app #steps { display: flex; overflow-x: auto; gap: 5px; padding-bottom: 8px; }
  .site-app .step { flex: 0 0 auto; width: auto; padding: 10px 12px; }
  .site-app .sidebar .eyebrow { margin-bottom: 8px; }
  .site-app .sidebar__bottom { display: flex; gap: 24px; margin-top: 5px; }
  .site-app .guide { border-top: 1px solid var(--pv-line); margin-top: 32px; padding-top: 25px; }
  .site-app .help-page { padding-inline: 20px; margin-top: 25px; }
  .site-app .help-page .help-lead { font-size: 19px; }
  .site-app .help-page>section { margin-block: 40px; }
  .site-app .public-nav { padding-inline: 20px; }
  .site-app .auth-page { padding-top: 36px; }
  .site-app .auth-page .lead { font-size: 18px; }
  .site-app .marketing-hero { display: block; padding: 35px 0; }
  .site-app .marketing-hero>div+div { margin-top: 35px; }
  .site-app .scenario-list { grid-template-columns: 1fr; gap: 12px; }
  .site-app .talk-heading { padding: 30px 0; }
  .site-app .briefing-roles,.site-app .briefing-goals { gap: 22px; }
  .site-app .messenger { margin-top: 16px; }
  .pv-footer.product-footer { margin-top: 55px; padding-inline: 20px; }
  .pv-footer__inner { flex-direction: column; gap: 18px; }
  .pv-footer__nav { justify-content: flex-start; gap: 6px 20px; }
}
@media (max-width:390px) {
  .pv-header__inner { padding-inline: 16px; gap: 10px; }
  .pv-footer.product-footer { padding-inline: 16px; }
  .pv-header .pv-subnav .pv-nav__link { padding-inline: 10px; font-size: 12px; }
  .pv-brand { font-size: 19px; gap: 6px; }
  .pv-header .pv-action { font-size: 12px; }

  .site-app main { padding-inline: 16px; }
  .site-app .help-page,.site-app .public-nav { padding-inline: 16px; }
}
@media (prefers-reduced-motion:reduce) { .site-app * { scroll-behavior: auto !important; transition: none !important; } }
@media print { .pv-header,.pv-footer { display: none !important; } body.site-app { background: white; } }
/* Examples and results use the same editorial scale as the rest of the site. */
.site-app .demo-conversation { padding:30px; background:#edf2fa; border:0; border-radius:4px; box-shadow:none; transform:none; }
.site-app .demo-bubble { background:#fff; border-radius:3px 14px 14px 14px; box-shadow:none; }
.site-app .demo-bubble--you { background:var(--pv-accent); color:#fff; }
.site-app .demo-bubble--you small { color:#d4e1ff; }
.site-app .demo-review { background:#f1f3ec; border:0; border-radius:4px; padding:32px; box-shadow:none; }
.site-app .talk-subsection h2 { font-size:clamp(28px,3.3vw,42px); }
.site-app .scenario-item h3 { font-size:27px; }
.site-app .scenario-item h3 a { text-decoration:none; }
.site-app .marketing-final { background:none; border-top:1px solid var(--pv-line); border-radius:0; padding:50px 0; text-align:left; }
.site-app .marketing-final h2 { font-size:clamp(32px,4vw,52px); }
.site-app .talk-faq details { background:none; border:0; border-bottom:1px solid var(--pv-line); border-radius:0; padding:20px 0; }
.site-app .practice-steps li { border-radius:0; background:none; }
.pv-header.product-header { display:block; }
.pv-header__inner { width:100%; }
.site-app .marketing-hero h1 { font-size:clamp(40px,4.3vw,62px); }

/* One shell across public pages and the trainer. */
.site-app :is(.pv-header,.pv-footer) { --pv-ink:#1c1c1e; --pv-muted:#63636b; --pv-line:#d9d9df; --pv-accent:#0064d8; font-family:var(--pv-font); line-height:1.5; }

/* Keep the account in the same position; task navigation gets its own row. */
.pv-header__actions:has(#drafts-toggle) { display:contents; }
.pv-header #account { margin-left:25px; }
.pv-header #drafts-toggle { order:4; flex:1 0 100%; justify-content:flex-start; font-size:13px; }
@media(max-width:760px) { .pv-header #account { margin-left:auto; } }

.pv-brand__logo{display:block;width:34px;height:34px;flex:none}.pv-brand{display:inline-flex;align-items:center;gap:9px}

.pv-brand{font-family:Arial,Helvetica,sans-serif;font-weight:700}
