/* Approved public snapshot 2026-11-04; source hashes in manifest.json. */
/* Shared article components for reviewed BiznesPolisa content. */
.bzp-content {
  --bzp-navy: var(--bzp-ds-color-heading, #101a36);
  --bzp-blue: var(--bzp-ds-color-info, #263ed2);
  --bzp-burgundy: var(--bzp-ds-color-burgundy-800, #7b0737);
  --bzp-ink: var(--bzp-ds-color-text-strong, #20243a);
  --bzp-muted: var(--bzp-ds-color-slate-600, #5d6478);
  --bzp-line: var(--bzp-ds-color-border-component, #dfe3ef);
  --bzp-soft: var(--bzp-ds-color-surface-soft, #f5f6ff);
  --bzp-white: var(--bzp-ds-color-surface, #fff);
  color: var(--bzp-ink);
}

.bzp-content,
.bzp-content p,
.bzp-content li {
  line-height: 1.72;
}

.bzp-content h2,
.bzp-content h3 {
  color: var(--bzp-navy);
  line-height: 1.24;
  text-wrap: balance;
}

.bzp-content h2 {
  margin-block: 2.25rem 1rem;
}

.bzp-content h3 {
  margin-block: 1.75rem .75rem;
}

.bzp-content a {
  color: var(--bzp-burgundy);
  text-decoration-thickness: .08em;
  text-underline-offset: .16em;
}

.bzp-content a:hover {
  color: var(--bzp-blue);
}

.bzp-content a:focus-visible,
.bzp-content button:focus-visible,
.bzp-content input:focus-visible,
.bzp-content select:focus-visible {
  outline: 3px solid #f2b705;
  outline-offset: 3px;
}

.bzp-key-points,
.bzp-callout,
.bzp-sources,
.bzp-related,
.bzp-tool,
.bzp-cta,
.bzp-toc {
  border: 1px solid var(--bzp-line);
  border-radius: 16px;
  margin-block: 1.75rem;
  padding: clamp(1.25rem, 3vw, 2rem);
}

.bzp-key-points,
.bzp-toc {
  background: var(--bzp-soft);
  border-left: 5px solid var(--bzp-blue);
}

.bzp-key-points > :first-child,
.bzp-callout > :first-child,
.bzp-sources > :first-child,
.bzp-related > :first-child,
.bzp-tool > :first-child,
.bzp-cta > :first-child,
.bzp-toc > :first-child {
  margin-top: 0;
}

.bzp-key-points > :last-child,
.bzp-callout > :last-child,
.bzp-sources > :last-child,
.bzp-related > :last-child,
.bzp-tool > :last-child,
.bzp-cta > :last-child,
.bzp-toc > :last-child {
  margin-bottom: 0;
}

.bzp-toc ol {
  columns: 2;
  column-gap: 3rem;
  margin-bottom: 0;
  padding-left: 1.3rem;
}

.bzp-toc li {
  break-inside: avoid;
  margin-bottom: .65rem;
}

.bzp-toc a {
  color: var(--bzp-navy);
  font-weight: 700;
}

.bzp-callout {
  background: #fff9ec;
  border-left: 5px solid #c88400;
}

.bzp-cta {
  background: var(--bzp-navy);
  color: var(--bzp-white);
  display: grid;
  gap: .4rem 1.5rem;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.bzp-cta h2,
.bzp-cta h3,
.bzp-cta a:not(.wp-block-button__link) {
  color: var(--bzp-white);
}

.bzp-cta .wp-block-buttons {
  grid-column: 2;
  grid-row: 1 / span 2;
}

.bzp-cta .wp-block-button__link {
  background: var(--bzp-burgundy);
  border-radius: 8px;
  min-height: 44px;
  padding: .75rem 1.25rem;
}

.bzp-table-wrap {
  border: 1px solid var(--bzp-line);
  border-radius: 12px;
  margin-block: 1.5rem;
  overflow-x: auto;
}

.bzp-table-wrap table {
  border-collapse: collapse;
  margin: 0;
  min-width: 620px;
  width: 100%;
}

.bzp-table-wrap th,
.bzp-table-wrap td {
  border-bottom: 1px solid var(--bzp-line);
  padding: .85rem 1rem;
  text-align: left;
  vertical-align: top;
}

.bzp-table-wrap th {
  background: var(--bzp-navy);
  color: var(--bzp-white);
}

.bzp-table-wrap tr:nth-child(even) td {
  background: #f8f9fc;
}

.bzp-faq details {
  border-bottom: 1px solid var(--bzp-line);
  padding: 1rem 0;
}

.bzp-faq summary {
  color: var(--bzp-navy);
  cursor: pointer;
  font-weight: 700;
  padding-right: 2rem;
}

.bzp-faq details[open] summary {
  margin-bottom: .75rem;
}

.bzp-sources,
.bzp-related {
  background: #fafbfe;
}

.bzp-sources .bzp-note,
.bzp-note {
  color: var(--bzp-muted);
  font-size: .9em;
}

.bzp-tool label {
  color: var(--bzp-navy);
  display: block;
  font-weight: 700;
  margin-bottom: .35rem;
}

.bzp-tool input,
.bzp-tool select,
.bzp-tool button {
  border: 1px solid #8e94a6;
  border-radius: 8px;
  min-height: 44px;
  padding: .65rem .8rem;
}

.bzp-tool button {
  background: var(--bzp-burgundy);
  border-color: var(--bzp-burgundy);
  color: var(--bzp-white);
  cursor: pointer;
  font-weight: 700;
}

.bzp-tool-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.bzp-tool-field input,
.bzp-tool-field select {
  width: 100%;
}

.bzp-tool-result {
  background: var(--bzp-soft);
  border-left: 4px solid var(--bzp-blue);
  margin-top: 1rem;
  padding: 1rem;
}

.bzp-tool-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--bzp-ds-space-xs, 12px);
  margin-top: var(--bzp-ds-space-sm, 16px);
}

.bzp-tool .bzp-tool-action {
  min-height: var(--bzp-ds-control-height, 48px);
}

.bzp-tool .bzp-tool-action--secondary {
  background: transparent;
  border-color: var(--bzp-ds-color-border-strong, #aeb7ca);
  color: var(--bzp-ds-color-heading, #101a36);
}

.bzp-tool .bzp-tool-action:disabled {
  cursor: not-allowed;
  opacity: .55;
}

.bzp-tool-action-status {
  color: var(--bzp-ds-color-text-muted, #687086);
  flex: 1 1 100%;
  font-size: .9em;
  min-height: 1.4em;
}

.bzp-tool[data-bzp-result-ready="false"] .bzp-tool-result {
  color: var(--bzp-ds-color-text-muted, #687086);
}

@media (max-width: 720px) {
  .bzp-tool-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .bzp-tool .bzp-tool-action {
    width: 100%;
  }
}

.bzp-checklist {
  list-style: none;
  margin-left: 0;
  padding-left: 0;
}

.bzp-checklist label {
  align-items: flex-start;
  display: flex;
  gap: .7rem;
  min-height: 44px;
}

.bzp-checklist input[type="checkbox"] {
  flex: 0 0 auto;
  margin-top: .3rem;
  min-height: 20px;
  width: 20px;
}

.bzp-related-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.bzp-path-grid,
.bzp-contact-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-block: 1.25rem;
}

.bzp-path-card,
.bzp-contact-card {
  background: var(--bzp-white);
  border: 1px solid var(--bzp-line);
  border-radius: 14px;
  color: var(--bzp-ink);
  display: block;
  padding: 1.25rem;
  text-decoration: none;
}

.bzp-path-card:hover,
.bzp-contact-card:hover {
  border-color: var(--bzp-blue);
  box-shadow: 0 8px 24px rgba(16, 26, 54, .08);
}

.bzp-path-card strong,
.bzp-contact-card strong {
  color: var(--bzp-navy);
  display: block;
  font-size: 1.08em;
  margin-bottom: .4rem;
}

.bzp-form-intro {
  background: var(--bzp-soft);
  border: 1px solid var(--bzp-line);
  border-radius: 16px;
  margin-block: 1.75rem;
  padding: clamp(1.25rem, 3vw, 2rem);
}

.bzp-legal-document {
  margin-inline: auto;
  max-width: 860px;
}

.bzp-legal-document p,
.bzp-legal-document li {
  max-width: 78ch;
}

.bzp-legal-document h2 {
  border-bottom: 1px solid var(--bzp-line);
  padding-bottom: .55rem;
}

.bzp-review-note {
  background: #fff8e1;
  border: 1px solid #e0b400;
  border-left: 5px solid #b58d00;
  border-radius: 12px;
  color: #352b00;
  margin-block: 1.5rem;
  padding: 1.25rem;
}

.bzp-review-note strong {
  color: #352b00;
}

.bzp-legal-meta {
  align-items: center;
  background: var(--bzp-soft);
  border-radius: 10px;
  display: flex;
  flex-wrap: wrap;
  gap: .5rem 1.25rem;
  margin-block: 1rem 1.5rem;
  padding: .85rem 1rem;
}

.bzp-legal-meta p {
  margin: 0;
}

.wpcf7 {
  background: #fff;
  border: 1px solid #dfe3ef;
  border-radius: 16px;
  margin-block: 1.5rem;
  max-width: 780px;
  padding: clamp(1.25rem, 3vw, 2rem);
}

.wpcf7 form {
  display: grid;
  gap: 1rem;
}

.wpcf7 label,
.wpcf7 .cf7-group-label {
  color: #101a36;
  display: block;
  font-weight: 700;
}

.wpcf7 input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.wpcf7 select,
.wpcf7 textarea {
  background: #fff;
  border: 1px solid #7e8496;
  border-radius: 8px;
  box-sizing: border-box;
  font: inherit;
  margin-top: .35rem;
  min-height: 48px;
  padding: .7rem .8rem;
  width: 100%;
}

.wpcf7 textarea {
  min-height: 140px;
  resize: vertical;
}

.wpcf7 input[type="checkbox"],
.wpcf7 input[type="radio"] {
  height: 22px;
  margin-right: .45rem;
  vertical-align: middle;
  width: 22px;
}

.wpcf7 input[type="submit"] {
  background: #7b0737;
  border: 0;
  border-radius: 8px;
  color: #fff;
  cursor: pointer;
  font-weight: 700;
  min-height: 48px;
  padding: .75rem 1.25rem;
  width: fit-content;
}

.wpcf7 input:focus-visible,
.wpcf7 select:focus-visible,
.wpcf7 textarea:focus-visible,
.wpcf7 input[type="submit"]:focus-visible {
  outline: 3px solid #f2b705;
  outline-offset: 3px;
}

.wpcf7 .wpcf7-not-valid-tip {
  color: #9b003a;
  display: block;
  font-weight: 700;
  margin-top: .35rem;
}

.wpcf7 .wpcf7-response-output {
  border-radius: 8px;
  margin: .5rem 0 0;
  padding: .9rem 1rem;
}

.bzp-related-card {
  background: var(--bzp-white);
  border: 1px solid var(--bzp-line);
  border-radius: 10px;
  display: block;
  padding: 1rem;
}

.bzp-diagram {
  background: var(--bzp-soft);
  border-radius: 16px;
  display: block;
  height: auto;
  margin-block: 1.5rem;
  max-width: 100%;
  width: 100%;
}

/* Review-only editorial comparison. Visible labels carry the meaning in
 * addition to color, while del/ins preserve the before/after semantics. */
body.bzp-published.bzp-content-diff-review:not(.bzp-excluded-source-parity) .bzp-content-correction {
  background: var(--bzp-ds-color-surface-subtle);
  border: 1px solid var(--bzp-ds-content-diff-border);
  border-radius: var(--bzp-ds-radius-lg);
  box-shadow: var(--bzp-ds-shadow-card);
  display: grid;
  gap: var(--bzp-ds-space-sm);
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 24rem), 1fr));
  margin-block: var(--bzp-ds-space-md);
  max-width: 100%;
  padding: var(--bzp-ds-space-md);
  text-align: left;
}

body.bzp-published.bzp-content-diff-review:not(.bzp-excluded-source-parity) .bzp-content-correction__title,
body.bzp-published.bzp-content-diff-review:not(.bzp-excluded-source-parity) .bzp-content-correction__reason {
  grid-column: 1 / -1;
}

body.bzp-published.bzp-content-diff-review:not(.bzp-excluded-source-parity) .bzp-content-correction__title {
  color: var(--bzp-ds-color-heading);
  font-size: var(--bzp-ds-type-size-h3-mobile);
  line-height: var(--bzp-ds-type-leading-heading);
}

body.bzp-published.bzp-content-diff-review:not(.bzp-excluded-source-parity) .bzp-content-correction__reason {
  color: var(--bzp-ds-color-text-muted);
  font-size: .95em;
}

body.bzp-published.bzp-content-diff-review:not(.bzp-excluded-source-parity) .bzp-content-correction__version {
  border: 1px solid currentColor;
  border-radius: var(--bzp-ds-radius-md);
  display: flex;
  flex-direction: column;
  gap: var(--bzp-ds-space-xs);
  min-width: 0;
  padding: var(--bzp-ds-space-sm);
  text-decoration: none;
}

body.bzp-published.bzp-content-diff-review:not(.bzp-excluded-source-parity) .bzp-content-correction__version--old {
  background: var(--bzp-ds-content-diff-old-surface);
  color: var(--bzp-ds-content-diff-old-color);
}

body.bzp-published.bzp-content-diff-review:not(.bzp-excluded-source-parity) .bzp-content-correction__version--old > span {
  text-decoration: line-through;
  text-decoration-thickness: 1px;
}

body.bzp-published.bzp-content-diff-review:not(.bzp-excluded-source-parity) .bzp-content-correction__version--new {
  background: var(--bzp-ds-content-diff-new-surface);
  color: var(--bzp-ds-content-diff-new-color);
}

body.bzp-published.bzp-content-diff-review:not(.bzp-excluded-source-parity) .bzp-content-correction__label {
  font-size: .78em;
  letter-spacing: .08em;
  line-height: 1.3;
  text-transform: uppercase;
}

@media (max-width: 720px) {
  body.bzp-published.bzp-content-diff-review:not(.bzp-excluded-source-parity) .bzp-content-correction {
    border-radius: var(--bzp-ds-radius-md);
    padding: var(--bzp-ds-space-sm);
  }

  .bzp-toc ol {
    columns: 1;
  }

  .bzp-cta {
    display: block;
  }

  .bzp-cta .wp-block-buttons {
    margin-top: 1rem;
  }

  .bzp-tool-grid,
  .bzp-related-grid,
  .bzp-path-grid,
  .bzp-contact-grid {
    grid-template-columns: 1fr;
  }

  .wpcf7 input[type="submit"] {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .bzp-content *,
  .bzp-content *::before,
  .bzp-content *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}
