.advert-intro { color: #737a84; margin: -6px 0 26px; line-height: 1.6; }
.advert-card { aspect-ratio: 1; min-width: 0; }
.advert-card-top { display: flex; align-items: flex-start; justify-content: space-between; width: 100%; gap: 12px; }
.advert-google .calendar-integration-logo { background: #f2a023; }
.advert-meta .calendar-integration-logo { background: #0866ff; }
.advert-tiktok .calendar-integration-logo { background: #15181d; }
.advert-searchconsole .calendar-integration-logo { background: #4285f4; }
.advert-badge { padding: 6px 9px; border-radius: 20px; background: #f0f1f3; color: #666d78; font-size: 11px; font-weight: 700; white-space: nowrap; }
.advert-badge.is-installed { color: #16734b; background: #e5f6ed; }
.advert-card-actions { display: flex; gap: 16px; align-items: center; margin-top: auto; flex-wrap: wrap; }
.advert-text-button { border: 0; background: none; color: #5b626d; font: inherit; font-size: 13px; text-decoration: underline; cursor: pointer; padding: 8px 0; }
.advert-dialog { box-sizing: border-box; padding: 0; border: 1px solid #e3e6eb; border-radius: 22px; width: min(580px, calc(100vw - 32px)); max-width: none; max-height: calc(100dvh - 40px); color: #20242b; background: #fff; box-shadow: 0 24px 90px #11182733; font-family: 'DM Sans', sans-serif; overflow: auto; overscroll-behavior: contain; }
.advert-dialog::backdrop { background: #14192299; backdrop-filter: blur(4px); }
body:has(.advert-dialog[open]) { overflow: hidden; }
.advert-statistics { width: min(1040px, calc(100vw - 40px)); }
.advert-modal-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding: 25px 28px 22px; border-bottom: 1px solid #edf0f3; }
.advert-dialog h2 { font: 800 24px/1.3 'Plus Jakarta Sans', sans-serif; margin: 6px 0 0; }
.advert-eyebrow { font-size: 10px; font-weight: 800; letter-spacing: .12em; color: #e50914; text-transform: uppercase; }
.advert-close { flex: 0 0 36px; width: 36px; height: 36px; border: 0; border-radius: 50%; background: #f2f3f5; color: #454c56; font-size: 25px; cursor: pointer; }
.advert-modal-body { padding: 24px 28px 28px; }
.advert-modal-body > p { margin-top: 0; line-height: 1.6; }
.advert-steps { counter-reset: step; list-style: none; padding: 0; margin: 24px 0; display: grid; gap: 18px; }
.advert-steps li { counter-increment: step; padding-left: 42px; position: relative; color: #535c68; font-size: 14px; line-height: 1.6; }
.advert-steps li::before { content: counter(step); position: absolute; left: 0; top: 0; width: 28px; height: 28px; border-radius: 9px; display: grid; place-items: center; background: #fff0f0; color: #c90c17; font-weight: 800; }
.advert-external { color: #bc101a; font-size: 13px; font-weight: 700; text-decoration: none; line-height: 1.5; }
.advert-external i { font-size: 10px; margin-left: 5px; }
.advert-dialog form { margin-top: 26px; }
.advert-dialog label { display: block; font-size: 12px; font-weight: 700; margin-bottom: 7px; }
.advert-dialog input, .advert-dialog select { box-sizing: border-box; border: 1px solid #dce1e7; border-radius: 10px; padding: 11px 13px; color: #20242b; background: #fff; font: inherit; font-size: 14px; max-width: 100%; }
.advert-dialog input { width: 100%; font-family: ui-monospace, monospace; }
.advert-dialog input:focus, .advert-dialog select:focus { outline: 2px solid #f4a4aa; outline-offset: 2px; }
.advert-dialog form small { display: block; color: #737a84; margin-top: 8px; font-size: 12px; }
.advert-form-actions { display: flex; flex-wrap: wrap; gap: 12px; margin: 17px 0 20px; }
.advert-primary, .advert-secondary, .advert-danger { border: 0; border-radius: 10px; padding: 12px 17px; font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; }
.advert-primary { background: #e50914; color: #fff; }
.advert-secondary { background: #f1f3f6; color: #343c47; }
.advert-danger { background: #fff0f0; color: #bc101a; }
.advert-dialog button:disabled { opacity: .55; cursor: wait; }
.advert-footnote { font-size: 12px; line-height: 1.6; color: #757d89; }
.advert-feedback { color: #596371; font-size: 13px; line-height: 1.5; }
.advert-feedback.is-error { color: #c21d28; }
.advert-id-caption { display: block; color: #77808c; font: 12px ui-monospace, monospace; margin-top: 8px; overflow-wrap: anywhere; }
.advert-stats-toolbar { display: flex; align-items: flex-end; flex-wrap: wrap; gap: 14px; margin-bottom: 20px; }
.advert-stats-toolbar .advert-external { margin-left: auto; align-self: center; }
.advert-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 18px 0; }
.advert-metrics article { border: 1px solid #e8ebef; background: #fafbfc; padding: 20px; border-radius: 14px; }
.advert-metrics span { color: #6b7380; font-size: 12px; }
.advert-metrics strong { display: block; margin-top: 8px; font: 800 32px/1.1 'Plus Jakarta Sans', sans-serif; }
.advert-empty { border: 1px dashed #dce1e7; border-radius: 12px; padding: 16px; color: #717986; background: #fafbfc; font-size: 13px; line-height: 1.6; }
.advert-chart-card { min-width: 0; padding: 20px; border: 1px solid #e8ebef; border-radius: 14px; margin-top: 18px; }
.advert-chart-card h3 { font-size: 14px; margin: 0; }
.advert-chart-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
.advert-chart-heading label { display: flex; align-items: center; gap: 8px; margin: 0; color: #737a84; }
.advert-chart svg { display: block; width: 100%; height: 220px; overflow: visible; }
.advert-chart-dates { display: flex; justify-content: space-between; color: #7b8490; font-size: 11px; padding-left: 28px; }
.advert-breakdowns { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.advert-chart-card p { font-size: 12px; color: #7b8490; margin: 8px 0 18px; }
.advert-bar-row { margin-top: 12px; }
.advert-bar-label { display: flex; justify-content: space-between; font-size: 12px; margin-bottom: 6px; gap: 12px; }
.advert-bar-track { height: 7px; background: #f0f2f5; border-radius: 10px; overflow: hidden; }
.advert-bar-fill { background: #e50914; height: 100%; min-width: 0; border-radius: inherit; }
.advert-data-table { margin: 22px 0; font-size: 12px; }
.advert-data-table summary { cursor: pointer; font-weight: 700; padding: 10px 0; }
.advert-data-table > div { overflow: auto; max-height: 280px; }
.advert-data-table table { width: 100%; border-collapse: collapse; text-align: right; }
.advert-data-table th, .advert-data-table td { padding: 9px; border-bottom: 1px solid #edf0f3; }
.advert-data-table th:first-child, .advert-data-table td:first-child { text-align: left; white-space: nowrap; }
.advert-dialog [hidden], .advert-card [hidden] { display: none !important; }
@media (max-width: 760px) {
  .advert-card { aspect-ratio: auto; min-height: 300px; }
  .advert-dialog, .advert-statistics { width: calc(100vw - 20px); max-height: calc(100dvh - 20px); border-radius: 16px; }
  .advert-modal-header { padding: 20px; }
  .advert-modal-body { padding: 20px; }
  .advert-dialog h2 { font-size: 21px; }
  .advert-metrics { gap: 8px; }
  .advert-metrics article { padding: 13px 9px; }
  .advert-metrics strong { font-size: 26px; }
  .advert-metrics span { font-size: 10px; }
  .advert-breakdowns { grid-template-columns: 1fr; gap: 0; }
  .advert-chart-card { padding: 15px; }
  .advert-chart-heading { align-items: flex-start; flex-direction: column; }
  .advert-stats-toolbar .advert-external { margin-left: 0; flex-basis: 100%; }
}
