:root{color-scheme:light;--bg:#eef3f9;--surface:#fff;--surface2:#f8fafc;--text:#172033;--muted:#64748b;--border:#dbe3ee;--primary:#2563eb;--accent:#06b6d4;--success:#16a34a;--danger:#dc2626;--shadow:0 18px 50px rgba(15,23,42,.08)}
[data-theme="dark"]{color-scheme:dark;--bg:#08111f;--surface:#111c2f;--surface2:#17243a;--text:#f1f5f9;--muted:#9fb0c7;--border:#2b3a52;--primary:#3b82f6;--accent:#22d3ee;--success:#22c55e;--danger:#ef4444;--shadow:0 20px 60px rgba(0,0,0,.25)}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at top right,rgba(37,99,235,.12),transparent 34%),var(--bg);color:var(--text);font-family:Inter,"Segoe UI",system-ui,sans-serif}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.52}.hidden{display:none!important}
.topbar{position:sticky;top:0;z-index:30;display:flex;justify-content:space-between;align-items:center;padding:14px clamp(16px,4vw,54px);background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid var(--border)}
.brand{display:flex;gap:12px;align-items:center;color:var(--text);text-decoration:none}.brand img{width:48px;height:48px}.brand strong,.brand span{display:block}.brand span{color:var(--muted);font-size:.86rem}.top-actions{display:flex;gap:10px}
.container{width:min(1540px,calc(100% - 32px));margin:26px auto 50px}.card{background:var(--surface);border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow)}
.hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);gap:24px;padding:clamp(24px,4vw,46px)}.eyebrow{color:var(--primary);font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:.74rem}h1,h2,p{margin-top:0}h1{font-size:clamp(2rem,4.2vw,4.5rem);line-height:1.02;margin:10px 0 18px;letter-spacing:-.045em}.hero p,.action-card p{color:var(--muted);line-height:1.6}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 14px}.selected-folder{color:var(--muted);padding:12px 14px;background:var(--surface2);border:1px dashed var(--border);border-radius:12px;overflow-wrap:anywhere}
.privacy-box{align-self:center;display:flex;gap:15px;padding:22px;border-radius:18px;background:linear-gradient(145deg,rgba(37,99,235,.1),rgba(6,182,212,.1));border:1px solid color-mix(in srgb,var(--primary) 28%,var(--border))}.privacy-icon,.notice-icon{font-size:2rem}.browser-notice{margin-top:20px;display:flex;gap:18px;padding:22px 26px;border-left:5px solid var(--accent)}.browser-notice p{color:var(--muted);margin-bottom:12px}.browser-list{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.browser-list span{padding:8px 12px;border-radius:999px;background:var(--surface2);border:1px solid var(--border);font-weight:700}.browser-notice small{color:var(--muted)}
.warning-box{margin-top:18px;padding:18px 22px;border-radius:14px;color:#7c2d12;background:#ffedd5;border:1px solid #fdba74}[data-theme="dark"] .warning-box{color:#fed7aa;background:#431407;border-color:#9a3412}
.workspace{display:grid;grid-template-columns:340px minmax(0,1fr);gap:20px;margin-top:20px;align-items:start}.rules-panel{padding:22px;position:sticky;top:92px}.section-title{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:18px}.section-title h2{margin-top:4px}
fieldset{margin:16px 0;padding:14px;border:1px solid var(--border);border-radius:14px}legend{padding:0 7px;font-weight:800;color:var(--muted)}.check-row{display:flex;align-items:center;gap:9px;padding:7px 0}.check-row input{width:17px;height:17px;accent-color:var(--primary)}
.field{margin:14px 0}.field label{display:block;margin-bottom:7px;color:var(--muted);font-size:.88rem;font-weight:700}input,select{width:100%;border:1px solid var(--border);background:var(--surface2);color:var(--text);padding:10px 12px;border-radius:10px;outline:none}input:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(37,99,235,.12)}
.rule-note{display:grid;gap:5px;margin-top:18px;padding:14px;background:rgba(22,163,74,.08);border:1px solid rgba(22,163,74,.25);border-radius:12px}.rule-note span{color:var(--muted);font-size:.86rem}
.results-panel{min-width:0;display:grid;gap:20px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat-card{padding:18px;background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow)}.stat-card span{color:var(--muted);font-size:.86rem}.stat-card strong{display:block;font-size:2rem;margin-top:5px}.stat-card.success strong{color:var(--success)}.stat-card.danger strong{color:var(--danger)}
.result-card,.extensions-card,.action-card{padding:22px}.result-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;margin-bottom:16px}.toolbar-actions{display:flex;gap:9px;align-items:center}.toolbar-actions input{width:230px}.toolbar-actions select{width:170px}.table-wrap{overflow:auto;border:1px solid var(--border);border-radius:14px;max-height:640px}table{width:100%;border-collapse:collapse;min-width:920px}th,td{padding:12px 13px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top;font-size:.9rem}th{position:sticky;top:0;z-index:2;background:var(--surface2);color:var(--muted);font-size:.78rem;text-transform:uppercase}.empty-row td{text-align:center;color:var(--muted);padding:42px}
.status-badge{display:inline-flex;padding:6px 9px;border-radius:999px;font-size:.76rem;font-weight:800}.status-change{color:#166534;background:#dcfce7}.status-same{color:#475569;background:#e2e8f0}.status-conflict{color:#991b1b;background:#fee2e2}[data-theme="dark"] .status-change{color:#bbf7d0;background:#14532d}[data-theme="dark"] .status-same{color:#cbd5e1;background:#334155}[data-theme="dark"] .status-conflict{color:#fecaca;background:#7f1d1d}
.progress-area{margin:14px 0}.progress-copy{display:flex;justify-content:space-between;color:var(--muted);margin-bottom:7px}.progress-track{height:10px;background:var(--surface2);border-radius:999px;overflow:hidden}.progress-bar{width:0;height:100%;background:linear-gradient(90deg,var(--primary),var(--accent));transition:width .16s}
.pagination{display:flex;justify-content:center;align-items:center;gap:13px;margin-top:16px}.extensions-stats{display:flex;flex-wrap:wrap;gap:10px}.extension-pill{min-width:120px;display:flex;justify-content:space-between;gap:12px;padding:10px 13px;background:var(--surface2);border:1px solid var(--border);border-radius:12px}.empty-stat{color:var(--muted)}.action-card{display:flex;justify-content:space-between;gap:18px;align-items:center}
.primary-button,.secondary-button,.icon-button,.text-button,.pagination button{border:0;border-radius:10px;font-weight:800;transition:.18s}.primary-button{color:#fff;background:var(--primary);padding:10px 15px}.secondary-button,.pagination button{color:var(--text);background:var(--surface2);border:1px solid var(--border);padding:9px 13px}.icon-button{width:42px;height:42px;color:var(--text);background:var(--surface2);border:1px solid var(--border)}.text-button{color:var(--primary);background:transparent;padding:5px}.large{padding:14px 19px}.danger-action{background:var(--danger)}
footer{width:min(1540px,calc(100% - 32px));margin:0 auto 28px;padding:22px 4px;display:flex;justify-content:space-between;gap:20px;color:var(--muted);border-top:1px solid var(--border)}footer strong,footer span{display:block}
dialog{width:min(480px,calc(100% - 30px));border:0;border-radius:20px;padding:0;background:var(--surface);color:var(--text);box-shadow:0 30px 100px rgba(0,0,0,.35)}dialog::backdrop{background:rgba(2,6,23,.7);backdrop-filter:blur(4px)}.dialog-card{padding:28px;text-align:center}.dialog-icon{font-size:3rem}.dialog-card p{color:var(--muted);line-height:1.6;white-space:pre-line}.dialog-actions{display:flex;justify-content:center;gap:10px;margin-top:22px}
@media(max-width:1180px){.workspace{grid-template-columns:1fr}.rules-panel{position:static}.stats-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:860px){.hero{grid-template-columns:1fr}.result-toolbar,.action-card,footer{align-items:stretch;flex-direction:column}.toolbar-actions{flex-wrap:wrap}.toolbar-actions input,.toolbar-actions select{width:100%}}@media(max-width:620px){.container{width:min(100% - 18px,1540px);margin-top:12px}.topbar{padding:10px 12px}.brand span{display:none}.hero,.rules-panel,.result-card,.extensions-card,.action-card{padding:17px}.stats-grid{grid-template-columns:1fr 1fr;gap:9px}.stat-card strong{font-size:1.55rem}}


/* =========================================================
   CORREÇÕES DE RESPONSIVIDADE — v1.1
   ========================================================= */
html, body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

img, svg, video, canvas {
  max-width: 100%;
  height: auto;
}

.topbar,
.container,
.workspace,
.results-panel,
.result-card,
.extensions-card,
.action-card,
.hero,
.browser-notice,
footer {
  min-width: 0;
  max-width: 100%;
}

.container,
footer {
  width: min(1540px, calc(100% - 24px));
}

.hero > *,
.workspace > *,
.results-panel > *,
.result-toolbar > *,
.action-card > * {
  min-width: 0;
}

.selected-folder,
td,
th,
.rule-note,
.privacy-box,
.browser-notice {
  overflow-wrap: anywhere;
  word-break: break-word;
}

.table-wrap {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

table {
  max-width: none;
}

.toolbar-actions {
  min-width: 0;
  max-width: 100%;
}

.recaptcha-panel {
  display: grid;
  gap: 12px;
  padding: 18px;
  border: 1px solid var(--border);
  border-radius: 16px;
  background: var(--surface-2);
}

.recaptcha-header {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.recaptcha-header .captcha-icon {
  font-size: 1.6rem;
  flex: 0 0 auto;
}

.recaptcha-header p {
  margin: 4px 0 0;
  color: var(--muted);
  line-height: 1.5;
}

#recaptchaContainer {
  min-height: 0;
  max-width: 100%;
  overflow: hidden;
}

#recaptchaContainer > div {
  transform-origin: left top;
}

.captcha-status {
  font-size: .88rem;
  color: var(--muted);
}

.captcha-status.valid {
  color: var(--success);
  font-weight: 800;
}

.captcha-status.error {
  color: var(--danger);
  font-weight: 800;
}

@media (max-width: 1024px) {
  .topbar {
    width: 100%;
  }

  .workspace {
    width: 100%;
  }

  .rules-panel {
    width: 100%;
  }
}

@media (max-width: 760px) {
  .container,
  footer {
    width: calc(100% - 16px);
  }

  .topbar {
    gap: 8px;
  }

  .top-actions {
    min-width: 0;
  }

  #installButton {
    max-width: 150px;
    white-space: normal;
  }

  .hero-actions,
  .toolbar-actions,
  .dialog-actions {
    width: 100%;
  }

  .hero-actions > button,
  .toolbar-actions > button,
  .dialog-actions > button {
    flex: 1 1 160px;
  }

  .result-toolbar {
    width: 100%;
  }

  .stats-grid {
    width: 100%;
  }

  .action-card .primary-button {
    width: 100%;
  }

  .browser-notice {
    align-items: flex-start;
  }
}

@media (max-width: 420px) {
  .container,
  footer {
    width: calc(100% - 10px);
  }

  .topbar {
    padding: 8px;
  }

  .brand img {
    width: 40px;
    height: 40px;
  }

  .brand strong {
    font-size: .94rem;
  }

  .top-actions {
    gap: 5px;
  }

  #installButton {
    display: none !important;
  }

  .hero,
  .browser-notice,
  .rules-panel,
  .result-card,
  .extensions-card,
  .action-card {
    border-radius: 14px;
    padding: 14px;
  }

  h1 {
    font-size: 1.85rem;
  }

  .stats-grid {
    grid-template-columns: 1fr;
  }

  .browser-notice {
    flex-direction: column;
  }

  .browser-list {
    display: grid;
    grid-template-columns: 1fr;
  }

  .pagination {
    flex-wrap: wrap;
  }

  dialog {
    width: calc(100% - 12px);
  }

  .dialog-card {
    padding: 20px 14px;
  }
}


/* =========================================================
   PUBLICIDADE RESPONSIVA — v1.2
   ========================================================= */
.advertising-section {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  padding: 16px;
  overflow: hidden;
}

.ad-label {
  margin-bottom: 8px;
  color: var(--muted);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-align: center;
}

.ad-container {
  width: 100%;
  max-width: 100%;
  min-height: 32px;
  margin: 0 auto;
  overflow: hidden;
  text-align: center;
}

.ad-container ins.adsbygoogle {
  display: block;
  width: 100%;
  max-width: 100%;
}

@media (max-width: 620px) {
  .advertising-section {
    padding: 10px 6px;
    border-radius: 14px;
  }

  .ad-container {
    margin: 0;
  }
}
