/* Regras de tela compartilhadas. A impressão mantém os estilos documentais
   de style.css; PDFs são produzidos pelo renderizador histórico do servidor. */
@media screen {
  :root { --screen-gutter: clamp(12px, 2.5vw, 28px); --screen-gap: clamp(12px, 2vw, 20px); }
  html { -webkit-text-size-adjust: 100%; }
  body { min-width: 0; padding-left: env(safe-area-inset-left); padding-right: env(safe-area-inset-right); padding-bottom: calc(76px + env(safe-area-inset-bottom)); }
  main { min-width: 0; }
  main, footer { overflow-wrap: anywhere; }
  [hidden] { display: none !important; }
  h1, .document h1, .panel-head h1, .login-card h1 { font-size: clamp(1.65rem, 1.3rem + 1.6vw, 2.5rem); line-height: 1.2; margin-inline: 0; }
  h2, .section-head h2 { font-size: clamp(1.35rem, 1.1rem + 1vw, 2rem); line-height: 1.25; margin-inline: 0; }
  h3 { font-size: clamp(1.1rem, 1rem + .4vw, 1.3rem); line-height: 1.35; }
  p, li, dd, dt, label, legend, summary { overflow-wrap: anywhere; }
  img, svg, canvas { max-width: 100%; }
  img { height: auto; }
  form, fieldset, label, section, article { min-width: 0; }
  input, select, textarea { min-width: 0; max-width: 100%; font-size: 16px; }
  input:not([type=checkbox]):not([type=radio]):not([type=hidden]), select, textarea { width: 100%; }
  textarea { resize: vertical; }
  fieldset { margin-inline: 0; padding: clamp(12px, 2vw, 18px); }
  legend { max-width: 100%; padding-inline: 4px; }
  fieldset label, .terms-check, .users-management td label, .package > label { min-height: 44px; align-items: center; }
  fieldset label { max-width: 100%; margin-right: 12px; }
  input[type=checkbox], input[type=radio] { flex: none; accent-color: var(--brand-teal); }
  .button, button, summary.button { min-width: 44px; min-height: 44px; max-width: 100%; height: auto; padding: 10px 16px; white-space: normal; overflow-wrap: anywhere; line-height: 1.45; text-align: center; }
  .full { min-height: 54px; }
  .link, .small, .whatsapp, [data-copy], .pix button { min-height: 44px; }
  .ui-icon { flex: none; }
  summary { min-height: 44px; }
  .package > label a { display: flex; align-items: center; min-height: 44px; min-width: 0; }
  input[type=file]::file-selector-button { min-height: 44px; min-width: 44px; }
  .bottom-back { width: fit-content; max-width: calc(100% - 2 * var(--screen-gutter)); }
  .actions, .results, .pagination, .user-pagination, .user-tabs { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
  .actions > *, .results > *, .pagination > *, .user-pagination > * { min-width: 0; max-width: 100%; }
  .actions form { display: inline-flex; }
  .actions form button { width: 100%; }
  form > button, form > .button { margin-block: 6px; }
  .flash, .reconnect, .notice, .empty, .pending, .pickup-success { min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
  .flash { width: min(1000px, calc(100% - 2 * var(--screen-gutter))); }
  .reconnect { width: min(700px, calc(100% - 2 * var(--screen-gutter))); }

  /* Cabeçalho: uma linha para marca e Menu, navegação medida pelo espaço real. */
  .site-header { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; min-height: 0; padding: 12px var(--screen-gutter); border-bottom: 5px solid var(--orange); background: var(--theme-header, var(--surface)); box-shadow: 0 5px 18px #26262612; position: relative; z-index: 10; }
  .site-header .brand { display: flex; align-items: center; flex: 0 1 220px; max-width: min(220px, calc(100% - 92px)); min-width: 0; margin: 0; text-decoration: none; }
  .site-header .brand img { display: block; width: auto; height: clamp(52px, 6vw, 80px); max-width: 100%; object-fit: contain; object-position: left center; }
  .brand-text { display: block; padding: 0; color: var(--ink); font-size: clamp(.9rem, .8rem + .4vw, 1.1rem); font-weight: 800; line-height: 1.2; }
  .brand-text strong { display: block; color: var(--orange-ink); font-size: 1.5em; text-transform: uppercase; }
  .brand-text small { display: block; color: var(--teal); font-size: .7rem; margin-top: 5px; letter-spacing: .04em; }
  .site-nav { display: flex; flex: 0 1 auto; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 8px; min-width: 0; max-width: 100%; }
  .site-nav form { margin: 0; }
  .site-nav button, .site-nav .button { margin: 0; }
  .logged-user { display: block; max-width: 14rem; color: var(--ink); font-weight: 750; white-space: normal; overflow: visible; text-overflow: clip; overflow-wrap: anywhere; }
  .nav-toggle { display: none; flex: none; align-self: center; }
  .site-header.nav-wide .site-nav { display: flex; flex-wrap: nowrap; width: max-content; max-width: none; }
  .site-header.nav-wide .nav-toggle { display: none; }
  .site-header.nav-compact .nav-toggle { display: inline-flex; }
  .site-header.nav-compact .site-nav { display: none; width: 100%; flex: 1 0 100%; padding-top: 8px; }
  .site-header.nav-compact .site-nav.open { display: grid; grid-template-columns: minmax(0, 1fr); }
  .site-header.nav-compact .site-nav > *, .site-header.nav-compact .site-nav form, .site-header.nav-compact .site-nav button { width: 100%; max-width: 100%; }
  .site-header.nav-compact .logged-user { text-align: center; padding: 10px; }
  .site-header.nav-measuring .site-nav { display: flex !important; flex-wrap: nowrap !important; position: absolute !important; width: max-content !important; max-width: none !important; visibility: hidden !important; padding: 0 !important; }
  .site-header.nav-measuring .site-nav > *, .site-header.nav-measuring .site-nav form, .site-header.nav-measuring .site-nav button { width: auto !important; }
  .site-header.nav-measuring .logged-user { max-width: 14rem !important; }

  /* Grades fluidas: nenhum filho força a largura mínima da página. */
  .panel-card, .panel-head { width: min(1180px, calc(100% - 2 * var(--screen-gutter))); margin: 20px auto; }
  .panel-card, .form-card, .login-card, .success-card, .document { padding: clamp(16px, 2.5vw, 32px); }
  .form-card, .success-card, .document { width: min(820px, calc(100% - 2 * var(--screen-gutter))); margin: 28px auto; }
  .login-card { width: min(480px, calc(100% - 2 * var(--screen-gutter))); margin: 28px auto; }
  .home-section { width: min(1180px, 100%); padding-inline: var(--screen-gutter); margin: clamp(32px, 5vw, 64px) auto; }
  .two, .three, .details-grid, .cards, .package-grid, .steps-grid, .price-grid, .photo-grid, .settings-grid, .blog-grid, .banner-admin-grid, .tutorial-grid, .metric-grid, .alert-cards, .theme-fields { display: grid; gap: var(--screen-gap); }
  .two { grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); }
  .three, .details-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)); }
  .cards, .package-grid, .steps-grid, .price-grid, .photo-grid, .settings-grid, .blog-grid, .banner-admin-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); }
  .tutorial-grid, .metric-grid, .alert-cards, .theme-fields { grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)); }
  :is(.two,.three,.details-grid,.cards,.package-grid,.steps-grid,.price-grid,.photo-grid,.settings-grid,.blog-grid,.banner-admin-grid,.tutorial-grid,.metric-grid,.alert-cards,.theme-fields) > * { min-width: 0; max-width: 100%; }
  .hero { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); padding: 36px var(--screen-gutter); gap: var(--screen-gap); }
  .hero-card { display: block; }
  .info-grid { width: min(1100px, calc(100% - 2 * var(--screen-gutter))); grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); margin: 20px auto; }
  .package-grid > div { padding: 12px; }
  .details-grid p { margin-block: 0; }
  .search { display: flex; gap: 10px; flex-wrap: wrap; align-items: end; }
  .search > input, .search-field { flex: 1 1 240px; min-width: 0; }
  .metric-filters { display: flex; flex-wrap: wrap; gap: 12px; align-items: end; }
  .metric-filters label { flex: 1 1 180px; }
  .metric-filters button { flex: 0 1 auto; }
  .metric-bar, .panel-head, .location-card { gap: var(--screen-gap); flex-wrap: wrap; }
  .metric-bar > *, .panel-head > *, .location-card > * { min-width: 0; max-width: 100%; }
  .panel-head > div { flex: 1 1 300px; }
  .pix { flex: 0 1 380px; max-width: 100%; }
  .pix b, .receipt-fields, .terms-text, #delivery-recipient, #delivery-address { overflow-wrap: anywhere; word-break: normal; }
  .terms-text { max-width: 100%; white-space: pre-wrap; }
  .totals { max-width: 100%; width: 340px; }
  .totals p { flex-wrap: wrap; gap: 8px; }
  .qr-code { width: min(280px, 100%); max-width: 100%; height: auto; }
  #pix-code { min-height: 9rem; font-size: 16px; line-height: 1.5; white-space: pre-wrap; overflow-wrap: anywhere; word-break: break-all; }
  .signature { display: block; width: 100%; max-width: 700px; height: auto; touch-action: none; }
  .saved-signature { height: auto; object-fit: contain; }

  /* Tabelas mantêm colunas e rolam só dentro da região identificada. */
  .table-scroll, .users-management .table-scroll { display: block; width: 100%; max-width: 100%; min-width: 0; overflow-x: auto; overscroll-behavior-inline: contain; }
  .table-scroll table { min-width: 560px; width: 100%; }
  .table-scroll th, .table-scroll td { overflow-wrap: anywhere; vertical-align: top; }
  .users-management td:last-child { min-width: 230px; }
  .users-management th:first-child, .users-management td:first-child { min-width: 136px; }
  .users-management th:nth-child(2), .users-management td:nth-child(2) { min-width: 224px; }
  .users-management th:nth-child(3), .users-management td:nth-child(3) { min-width: 160px; }
  .users-management th:nth-child(4), .users-management td:nth-child(4) { min-width: 112px; }
  .team-create summary { max-width: 100%; white-space: normal; }

  /* Indicadores com alvo de toque de 44px, mantendo o ponto visual pequeno. */
  .banner-controls { flex-wrap: wrap; }
  .banner-controls [data-slide-to], .banner-controls [data-slide-to][aria-current=true] { width: 44px; height: 44px; min-width: 44px; min-height: 44px; padding: 16px; background: transparent; }
  .banner-controls [data-slide-to]::before { content: ''; display: block; flex: none; width: 12px; height: 12px; border-radius: 50%; background: var(--line); }
  .banner-controls [data-slide-to][aria-current=true]::before { background: var(--orange); }
  .main-service-banner .banner-slide img { width: 100%; height: 100%; object-fit: contain; }

  .support-float { position: fixed; display: flex; align-items: center; justify-content: center; width: 56px; height: 56px; min-height: 56px; padding: 0; right: max(16px, env(safe-area-inset-right)); bottom: max(16px, env(safe-area-inset-bottom)); z-index: 50; border-radius: 50%; background: transparent; box-shadow: none; }
  .support-float img { width: 100%; height: auto; display: block; clip-path: circle(50%); filter: drop-shadow(0 3px 5px #26262626); }
  .support-float span { position: absolute; right: 64px; white-space: nowrap; padding: 8px 12px; border-radius: 8px; background: var(--footer); color: var(--footer-ink); visibility: hidden; opacity: 0; }
  .support-float:hover span, .support-float:focus-visible span { visibility: visible; opacity: 1; }
  .support-float[data-control-overlap] { visibility: hidden; pointer-events: none; }
  footer { padding: 28px var(--screen-gutter); }
}

/* Sem JS, o tablet já recebe a navegação recolhida; a medição pode expandi-la. */
@media screen and (max-width: 64rem) {
  .site-header:not(.nav-wide) .nav-toggle { display: inline-flex; }
  .site-header:not(.nav-wide) .site-nav { display: none; width: 100%; flex: 1 0 100%; }
  .site-header:not(.nav-wide) .site-nav.open { display: grid; }
}

@media screen and (max-width: 47.99rem) {
  .site-header { gap: 10px; padding-block: max(10px, env(safe-area-inset-top)) 10px; }
  .site-header .brand { flex-basis: 190px; }
  .site-header .brand img { height: 60px; }
  .two, .three, .details-grid { grid-template-columns: minmax(0, 1fr); }
  .panel-head { align-items: stretch; }
  .pix { flex-basis: 100%; margin-top: 0; }
  .actions > * { flex: 1 1 180px; }
  .actions .button, .actions button { width: 100%; }
  .search > *, .metric-filters > * { flex-basis: 100%; }
  .location-card { align-items: stretch; flex-direction: column; }
  .location-card .button { width: 100%; }
  .user-tabs a { padding: 10px; min-width: 0; }
  .team-create summary { width: 100%; }
  .users-management .table-scroll { overflow: visible; }
  .users-management .table-scroll table { min-width: 0; }
  .users-management table, .users-management tbody, .users-management tr, .users-management td { display: block; width: 100%; }
  .users-management thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .users-management tbody tr { margin: 16px 0; border: 1px solid var(--line); border-radius: 12px; padding: 12px; }
  .users-management .table-scroll td, .users-management td:last-child { min-width: 0; padding: 8px 0; border: 0; }
  .users-management td[data-label]::before { content: attr(data-label); display: block; color: var(--teal); font-size: .875rem; font-weight: 800; margin-bottom: 4px; }
  .support-float { width: 48px; height: 48px; min-height: 48px; right: max(12px, env(safe-area-inset-right)); bottom: max(12px, env(safe-area-inset-bottom)); }
  .support-float span { display: none; }
}

@media print {
  .nav-toggle, .support-float { display: none !important; }
}

/* Cartões: uma única moldura estável, com imagens completas de qualquer proporção. */
@media screen {
  .explanatory-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:var(--screen-gap); }
  .explanatory-grid article { display:flex; flex-direction:column; background:var(--surface,#fff); border-radius:18px; padding:12px; text-align:center; }
  .explanatory-grid article > h3 { margin:0 0 12px; }
  .explanatory-open { display:block; margin-top:auto; width:100%; color:var(--text,#262626); text-decoration:none; border-radius:12px; }
  .explanatory-open:focus-visible { outline:3px solid var(--orange); outline-offset:4px; }
  .explanatory-open picture { display:flex; align-items:center; justify-content:center; aspect-ratio:2/3; width:100%; background:var(--soft,#f2faf9); border-radius:12px; }
  .explanatory-open img { display:block; width:100%; height:100%; object-fit:contain; object-position:center; margin:0; padding:0; }
  .explanatory-open span { display:block; padding:12px 0; text-decoration:underline; }
  .explanatory-open .enlarge-touch { display:none; }
  .explanatory-admin-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--screen-gap); }
  .explanatory-admin-preview { display:block; width:100%; height:260px; object-fit:contain; margin-bottom:16px; }
  .card-lightbox { width:min(1000px,calc(100% - 24px)); max-width:calc(100% - 24px); max-height:calc(100dvh - 24px); padding:16px; border:0; border-radius:16px; color:var(--text,#262626); background:var(--surface,#fff); overflow:auto; }
  .card-lightbox::backdrop { background:#000b; }
  .card-lightbox-content { display:flex; flex-direction:column; align-items:center; gap:12px; }
  .card-lightbox [data-card-close] { align-self:flex-end; flex:none; }
  .card-lightbox h2 { font-size:1.2rem; margin:0; }
  .card-lightbox img { display:block; max-width:100%; max-height:calc(100dvh - 180px); width:auto; height:auto; object-fit:contain; }
}
@media screen and (max-width:64rem) { .explanatory-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media screen and (max-width:47.99rem) { .explanatory-grid { grid-template-columns:minmax(0,1fr); } .explanatory-admin-grid { grid-template-columns:minmax(0,1fr); } }
@media (pointer:coarse) { .explanatory-open .enlarge-desktop { display:none; } .explanatory-open .enlarge-touch { display:block; } }

@media screen {
  .site-header .header-signup { display:inline-flex; align-items:center; justify-content:center; flex:none; border:1px solid #d43f00; border-radius:12px; background:#d43f00; color:#fff; font-weight:800; white-space:nowrap; }
  .site-header .header-signup:hover { background:#c43b00; border-color:#c43b00; }
  .site-header .signup-mobile { display:none; }
  .site-header.nav-compact.has-signup { gap:8px; }
  .site-header.nav-compact.has-signup .brand { flex:1 1 80px; max-width:220px; }
  .site-header.nav-compact .signup-mobile { display:inline-flex; padding:9px 10px; font-size:14px; }
  .site-header.nav-compact .signup-mobile .ui-icon { width:18px; height:18px; margin-right:5px; }
  .site-header.nav-compact.has-signup .nav-toggle { padding:9px 10px; font-size:14px; }
  .site-header.nav-compact .site-nav .signup-desktop { display:none; }
  .site-header.nav-measuring .site-nav .signup-desktop { display:inline-flex; }
  .site-header.nav-compact.has-signup .brand-text { font-size:12px; }
  .site-header.nav-compact.has-signup .brand-text strong { font-size:clamp(13px,3.6vw,18px); white-space:nowrap; }
  .site-header.nav-compact.has-signup .brand-text small { font-size:9px; line-height:1.2; }
  #cadastro { scroll-margin-top:20px; }
}

@media screen {
  .store-marquee { width:100%; min-width:0; overflow:hidden; margin:24px 0; padding:8px 0; background:#fff; border-radius:12px; mask-image:linear-gradient(to right,transparent,#000 4%,#000 96%,transparent); }
  .store-marquee:focus-visible { outline:3px solid var(--orange); outline-offset:4px; }
  .store-track { display:flex; width:max-content; animation:stores-left 65s linear infinite; }
  .store-group { display:flex; flex:none; align-items:center; list-style:none; gap:24px; margin:0; padding:0 24px 0 0; }
  .store-group li { display:flex; align-items:center; justify-content:center; flex:none; width:160px; height:80px; padding:8px; }
  .store-group img { display:block; width:100%; height:100%; object-fit:contain; object-position:center; }
  .store-marquee:hover .store-track, .store-marquee:focus-within .store-track { animation-play-state:paused; }
}
@keyframes stores-left { from { transform:translateX(0); } to { transform:translateX(-50%); } }
@media (prefers-reduced-motion:reduce) {
  .store-track { animation:none; width:100%; transform:none; }
  .store-group { display:grid; width:100%; grid-template-columns:repeat(auto-fit,minmax(min(100%,120px),1fr)); gap:16px; padding:0; }
  .store-group li { width:100%; }
  .store-group[aria-hidden=true] { display:none; }
  .store-marquee { mask-image:none; }
}
@media screen {
  .store-logo-tiktok-shop { background:#111; border-radius:10px; }
  .store-logo-renner, .store-logo-centauro { background:#e21c2a; border-radius:10px; }
}
@media screen {
  .google-signin { display:flex; align-items:center; justify-content:center; gap:12px; background:#fff; color:#262626; border:1px solid #747775; font-weight:600; }
  .google-signin svg { flex:none; }
  .google-signin:hover { background:#f3f5f5; }
}
@media screen {
  .footer-documents { display:flex; flex-wrap:wrap; gap:8px 12px; align-items:center; justify-content:center; margin:0 0 18px; }
  .footer-documents a { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:8px; color:var(--footer-ink,#fff); text-decoration:underline; text-underline-offset:3px; }
  .footer-documents a:hover, .footer-documents a:focus-visible { color:var(--footer-ink,#fff); outline:2px solid currentColor; outline-offset:2px; }
  .privacy-document h2 { margin-top:28px; }
  .privacy-document p, .privacy-document li { line-height:1.75; }
  .privacy-document code { white-space:normal; overflow-wrap:anywhere; }
}

/* Immutable revision identifiers must fit even at 320 px. */
.contract-revision { overflow-wrap: anywhere; word-break: break-word; }

/* Consent controls retain a stable hit area and alignment on narrow screens. */
form .acceptance-check { display:flex; align-items:flex-start; gap:12px; min-height:44px; margin:20px 0; line-height:1.5; cursor:pointer; }
.acceptance-check input[type=checkbox] { appearance:none; -webkit-appearance:none; display:grid; place-content:center; flex:0 0 24px; width:24px; height:24px; padding:0; margin:0; border:2px solid #52645b; border-radius:5px; background:#fff; }
.acceptance-check input[type=checkbox]:checked { background:#167348; border-color:#167348; }
.acceptance-check input[type=checkbox]:checked::after { content:''; width:11px; height:6px; border:solid white; border-width:0 0 3px 3px; transform:rotate(-45deg); margin-top:-3px; }
.acceptance-check span { flex:1; min-width:0; }
.acceptance-form > .clear-signature { margin-top:10px; }
.email-status { margin:12px 0; overflow-wrap:anywhere; }
.email-status:empty { margin:0; }
.email-status.success { color:#116843; background:#def5e9; padding:12px; border-radius:9px; }
.email-status.error { color:#9a2416; background:#fee7e3; padding:12px; border-radius:9px; }
@media (forced-colors: active) { .acceptance-check input[type=checkbox] { appearance:auto; } }

/* Blog: one continuous reading column; icons occupy heading lines only. */
.blog-reading { max-width:860px; padding:clamp(18px,4vw,46px); background:#fff; }
.blog-reading .article-body { max-width:none; font-size:clamp(16px,1.2vw,18px); line-height:1.8; }
.blog-reading .blog-introduction { font-size:1.1rem; line-height:1.75; }
.blog-reading .blog-section { margin-top:2rem; }
.blog-reading .blog-heading { display:flex; align-items:flex-start; gap:12px; line-height:1.35; scroll-margin-top:24px; margin-bottom:18px; }
.blog-heading span { min-width:0; overflow-wrap:anywhere; }
.blog-heading-icon { display:block; flex:0 0 28px; width:28px; height:28px; margin-top:2px; object-fit:contain; }
.blog-reading .article-body ul,.blog-reading .article-body ol { padding:0 0 0 1.6em; background:transparent; border-radius:0; }
.blog-reading .article-body li { margin-block:8px; }
.blog-reading .article-body p,.blog-reading .article-body a { overflow-wrap:anywhere; }
.blog-toc { margin:24px 0; padding:16px 20px; background:var(--teal-soft); border:1px solid var(--line); border-radius:14px; }
.blog-toc summary { font-weight:800; min-height:44px; cursor:pointer; }
.blog-toc a { display:inline-block; padding-block:8px; }
.blog-toc .toc-level-3 { margin-left:1em; }
.blog-icon-library,.blog-custom-icons { margin:22px 0; padding:16px; border:1px solid var(--line); border-radius:14px; }
.blog-icon-library>summary,.blog-custom-icons>summary { cursor:pointer; font-weight:800; min-height:44px; }
.blog-icon-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,235px),1fr)); gap:10px; margin:14px 0; }
.blog-icon-choice { min-width:0; border:1px solid var(--line); border-radius:12px; padding:8px; }
.blog-icon-choice>button:first-child { display:flex; justify-content:flex-start; gap:12px; width:100%; text-align:left; background:var(--surface); padding:8px; }
.blog-icon-choice img { flex:none; width:28px; height:28px; object-fit:contain; }
.blog-icon-choice span { min-width:0; overflow-wrap:anywhere; }
.blog-icon-choice small { display:block; font-size:12px; font-weight:400; }
.blog-custom-preview { width:128px; height:128px; object-fit:contain; display:block; margin:16px 0; background:var(--teal-soft); border:1px solid var(--line); }
form .blog-option { display:flex; align-items:flex-start; gap:10px; line-height:1.5; min-height:44px; }
.blog-option input[type=checkbox] { display:inline-block; flex:none; width:22px; height:22px; margin:0; }
.blog-preview-dialog { width:calc(100% - 24px); max-width:960px; max-height:calc(100dvh - 24px); padding:0; border:1px solid var(--line); border-radius:16px; background:#fff; color:var(--ink); }
.blog-preview-dialog::backdrop { background:#26262688; }
.blog-preview-toolbar { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; padding:16px; border-bottom:1px solid var(--line); }
.blog-preview-toolbar h2 { font-size:1rem; margin:0; }
.blog-preview-dialog .blog-article { margin:16px auto; box-shadow:none; }
@media print { .blog-toc,.blog-preview-toolbar { display:none; } }

/* Optional blog covers use their natural proportions, above the title. */
.blog-article>.article-cover { width:100%; height:auto; max-height:none; object-fit:contain; margin:0 0 24px; }
.blog-cover-editor { min-width:0; margin:22px 0; padding:16px; border:1px solid var(--line); border-radius:14px; }
.blog-cover-editor .blog-cover-preview { display:block; width:100%; object-fit:contain; }
form .blog-cover-option { display:flex; align-items:flex-start; gap:10px; min-height:44px; line-height:1.5; }
.blog-cover-option input[type=checkbox] { display:inline-block; flex:none; width:22px; height:22px; margin:0; }

/* ME GUARDE Mais: shared responsive payment and credit presentation. */
.plan-panel{overflow-wrap:anywhere}.plan-logo{display:block;width:240px;max-width:100%;height:auto;object-fit:contain;margin-bottom:1rem}
.plan-balance strong{font-size:2rem}.plan-checkout{max-width:36rem;display:grid;gap:1rem}.plan-checkout fieldset{min-width:0;padding:1rem;border:1px solid var(--border,#ccc);border-radius:12px}.plan-checkout fieldset[hidden]{display:none}
.plan-checkout label:not(.plan-consent){display:grid;gap:.4rem}.plan-checkout input,.plan-checkout select,.plan-pix textarea{max-width:100%;width:100%;min-width:0;font-size:16px;box-sizing:border-box}
.plan-consent{display:flex;align-items:flex-start;gap:.7rem;line-height:1.5}.plan-consent input{width:24px;height:24px;flex:0 0 24px;accent-color:#13834b}.plan-pix{max-width:36rem}.plan-pix img{display:block;max-width:100%;height:auto;margin:1rem auto}.plan-pix textarea{overflow-wrap:anywhere;word-break:break-all}.plan-panel form{margin-bottom:1rem}
