/* ==========================================================
   Rota RD — estilos do site e da área restrita
   ========================================================== */
/* Fontes hospedadas no próprio site (Barlow Condensed e Manrope — SIL Open Font License) */
@font-face { font-family: "Manrope"; font-style: normal; font-weight: 200 800; font-display: swap; src: url("../fonts/manrope-latin-wght-normal.woff2") format("woff2"); }
@font-face { font-family: "Barlow Condensed"; font-style: normal; font-weight: 600; font-display: swap; src: url("../fonts/barlow-condensed-latin-600-normal.woff2") format("woff2"); }
@font-face { font-family: "Barlow Condensed"; font-style: normal; font-weight: 700; font-display: swap; src: url("../fonts/barlow-condensed-latin-700-normal.woff2") format("woff2"); }
@font-face { font-family: "Barlow Condensed"; font-style: normal; font-weight: 800; font-display: swap; src: url("../fonts/barlow-condensed-latin-800-normal.woff2") format("woff2"); }

:root {
  --radius: 0.375rem;
  --background: #fafcfe;
  --foreground: #07090d;
  --card: #ffffff;
  --primary: #080a0d;
  --primary-rgb: 8, 10, 13;
  --primary-soft: #1a1d21;
  --secondary: #eff2f5;
  --muted-foreground: #565b62;
  --accent: #ee1950;
  --accent-rgb: 238, 25, 80;
  --accent-strong: #d3003e;
  --border: #d4d8dd;
  --input: #dee2e5;
  --white: #fafafa;
  --whatsapp: #28b45e;
  --whatsapp-strong: #109d4d;
  --shadow-action: 0 14px 30px -14px rgba(238, 25, 80, 0.65);
  --shadow-card: 0 18px 45px -28px rgba(2, 6, 13, 0.38);
  --font-sans: "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-display: "Barlow Condensed", "Arial Narrow", sans-serif;
}

*, *::before, *::after { box-sizing: border-box; border: 0 solid var(--border); }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--background); color: var(--foreground); font-family: var(--font-sans); line-height: 1.5; -webkit-font-smoothing: antialiased; }
h1, h2, h3 { font-family: var(--font-display); letter-spacing: 0; margin: 0; }
p, figure { margin: 0; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; color: inherit; }
button { cursor: pointer; background: none; }
[hidden] { display: none !important; }
::selection { background: var(--accent); color: #fff; }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }

.container { width: 100%; max-width: 80rem; margin: 0 auto; padding-left: 1.25rem; padding-right: 1.25rem; }
@media (min-width: 1024px) { .container { padding-left: 2rem; padding-right: 2rem; } }
.rel { position: relative; }
.text-accent { color: var(--accent); }
.bg-secondary { background: var(--secondary); }
.mt-6 { margin-top: 1.5rem; }
.mt-7 { margin-top: 1.75rem; }
.mt-05 { margin-top: 0.125rem; }

/* Ícones */
.icon { width: 1.5rem; height: 1.5rem; flex-shrink: 0; }
.icon-4 { width: 1rem; height: 1rem; }
.icon-5 { width: 1.25rem; height: 1.25rem; }
.icon-6 { width: 1.5rem; height: 1.5rem; }
.icon-7 { width: 1.75rem; height: 1.75rem; }
.icon-8 { width: 2rem; height: 2rem; }
.icon-9 { width: 2.25rem; height: 2.25rem; }
.icon-10 { width: 2.5rem; height: 2.5rem; }

/* Botões */
.btn { display: inline-flex; min-height: 3rem; align-items: center; justify-content: center; gap: 0.5rem; border-radius: var(--radius); padding: 0.75rem 1.25rem; font-size: 0.875rem; line-height: 1.25rem; font-weight: 700; transition: all .15s ease; border: 0; }
.btn:disabled { pointer-events: none; opacity: .5; }
.btn-primary { background: var(--accent); color: #fff; box-shadow: var(--shadow-action); }
.btn-primary:hover { transform: translateY(-2px); background: var(--accent-strong); }
.btn-outline { border: 1px solid var(--border); background: var(--background); color: var(--foreground); }
.btn-outline:hover { border-color: var(--accent); color: var(--accent); }
.btn-ghost { color: var(--white); }
.btn-ghost:hover { background: rgba(255,255,255,.12); }
.btn-sm { min-height: 2.5rem; padding: 0.5rem 1rem; }
.btn-lg { min-height: 3.5rem; padding: 0.75rem 1.75rem; font-size: 1rem; line-height: 1.5rem; }
.btn-icon { width: 3rem; height: 3rem; padding: 0; }
.btn-block { width: 100%; }

/* Cabeçalho */
.site-header { position: absolute; left: 0; right: 0; top: 0; z-index: 40; border-bottom: 1px solid rgba(250,250,250,.15); background: rgba(var(--primary-rgb), .8); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
.header-bar { display: flex; height: 5rem; align-items: center; justify-content: space-between; }
.header-logo { height: 2.75rem; width: auto; }
.nav-desktop { display: none; align-items: center; gap: 2rem; }
.nav-desktop > a:not(.btn) { font-size: .875rem; font-weight: 600; color: rgba(250,250,250,.8); transition: color .15s; }
.nav-desktop > a:not(.btn):hover { color: var(--white); }
.menu-toggle .ic-close { display: none; }
.menu-toggle[aria-expanded="true"] .ic-open { display: none; }
.menu-toggle[aria-expanded="true"] .ic-close { display: inline-flex; }
.menu-toggle span { display: inline-flex; }
.nav-mobile { border-top: 1px solid rgba(250,250,250,.15); background: var(--primary); padding: 1.25rem; }
.nav-mobile a:not(.btn) { display: block; border-bottom: 1px solid rgba(250,250,250,.1); padding: .75rem 0; font-weight: 600; color: var(--white); }
.nav-mobile .btn { margin-top: 1.25rem; }
@media (min-width: 768px) {
  .nav-desktop { display: flex; }
  .menu-toggle, .nav-mobile { display: none !important; }
}

/* Hero */
.hero { position: relative; overflow: hidden; background: var(--primary); padding-top: 5rem; color: var(--white); }
.hero-bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.hero-overlay { position: absolute; inset: 0; background: rgba(var(--primary-rgb), .7); }
.hero-content { position: relative; display: flex; align-items: center; padding-top: 3rem; padding-bottom: 3rem; }
.hero-inner { max-width: 56rem; }
.hero-badge { margin-bottom: 1.25rem; display: inline-flex; align-items: center; gap: .5rem; border-left: 4px solid var(--accent); background: rgba(255,255,255,.12); padding: .5rem 1rem; font-size: .75rem; line-height: 1rem; font-weight: 800; text-transform: uppercase; letter-spacing: .1em; }
.hero h1 { max-width: 56rem; font-size: 3rem; font-weight: 800; text-transform: uppercase; line-height: .92; }
.hero-lead { margin-top: 1.25rem; max-width: 48rem; font-size: 1rem; font-weight: 500; line-height: 1.625; color: rgba(250,250,250,.85); }
.hero-notice { margin-top: 1.25rem; border-left: 4px solid var(--accent); background: rgba(var(--primary-rgb), .75); padding: .75rem; font-size: .875rem; font-weight: 700; line-height: 1.625; color: var(--white); }
.hero-actions { margin-top: 1.25rem; display: flex; flex-direction: column; gap: .5rem; }
.hero-stats { position: relative; border-top: 1px solid rgba(250,250,250,.15); background: rgba(var(--primary-rgb), .9); }
.stats-grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.stat { padding: 1.5rem .75rem; text-align: center; }
.stat + .stat { border-left: 1px solid rgba(250,250,250,.15); }
.stat strong { font-family: var(--font-display); font-size: 1.875rem; line-height: 2.25rem; color: var(--accent); }
.stat span { margin-top: .25rem; display: block; font-size: 10px; font-weight: 700; text-transform: uppercase; color: rgba(250,250,250,.65); }
@media (min-width: 640px) {
  .hero h1 { font-size: 3.75rem; }
  .hero-lead { font-size: 1.125rem; }
  .hero-notice { padding: 1rem; font-size: 1rem; }
  .hero-actions { flex-direction: row; }
  .stat strong { font-size: 2.25rem; line-height: 2.5rem; }
  .stat span { font-size: .75rem; }
}
@media (min-width: 1024px) {
  .hero { min-height: 820px; }
  .hero-overlay { background: rgba(var(--primary-rgb), .6); }
  .hero-content { min-height: 740px; padding-top: 4rem; padding-bottom: 4rem; }
  .hero-badge { margin-bottom: 1.5rem; }
  .hero h1 { font-size: 6rem; }
  .hero-lead { margin-top: 1.75rem; font-size: 1.25rem; }
  .hero-notice, .hero-actions { margin-top: 2rem; }
  .hero-actions { gap: .75rem; }
}
@keyframes rise { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: translateY(0); } }
.animate-rise { animation: rise 650ms ease-out both; }

/* Seções e títulos */
.section { padding: 5rem 0; }
@media (min-width: 1024px) { .section { padding: 7rem 0; } }
.heading { margin-bottom: 2.5rem; max-width: 48rem; }
.eyebrow { margin-bottom: .75rem; font-size: .75rem; line-height: 1rem; font-weight: 800; text-transform: uppercase; letter-spacing: .18em; color: var(--accent); }
.heading h2 { font-size: 2.25rem; font-weight: 800; text-transform: uppercase; line-height: 1; color: var(--foreground); }
.heading-text { margin-top: 1.25rem; line-height: 1.625; color: var(--muted-foreground); }
.heading--light h2 { color: var(--white); }
.heading--light .heading-text { color: rgba(250,250,250,.65); }
@media (min-width: 640px) { .heading h2 { font-size: 3rem; } }
@media (min-width: 1024px) { .heading h2 { font-size: 3.75rem; } }

/* Vantagens */
.adv-grid { display: grid; gap: 1px; overflow: hidden; border-radius: var(--radius); background: var(--border); }
.adv-item { background: var(--card); padding: 1.75rem; }
.adv-icon { margin-bottom: 1.5rem; }
.adv-item h3, .safety-item h3 { font-size: 1.5rem; line-height: 2rem; font-weight: 700; text-transform: uppercase; }
.adv-item p { margin-top: .75rem; font-size: .875rem; line-height: 1.625; color: var(--muted-foreground); }
@media (min-width: 640px) { .adv-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .adv-grid { grid-template-columns: repeat(4, 1fr); } }

/* Serviços */
.services-grid { display: grid; gap: 1.25rem; }
.service-card { overflow: hidden; border-radius: var(--radius); border: 1px solid var(--border); background: var(--card); box-shadow: var(--shadow-card); }
.service-media { position: relative; aspect-ratio: 16 / 9; overflow: hidden; }
.service-media img { width: 100%; height: 100%; object-fit: cover; transition: transform 500ms; }
.service-card:hover .service-media img { transform: scale(1.05); }
.service-icon { position: absolute; left: 1rem; top: 1rem; display: grid; place-items: center; width: 2.75rem; height: 2.75rem; border-radius: var(--radius); background: var(--accent); color: #fff; }
.service-body { padding: 1.5rem; }
.service-body h3 { font-size: 1.5rem; line-height: 2rem; font-weight: 800; text-transform: uppercase; }
.service-body > p { margin-top: .75rem; font-size: .875rem; line-height: 1.625; color: var(--muted-foreground); }
.service-body > p.service-note { margin-top: 1rem; border-left: 2px solid var(--accent); padding-left: .75rem; font-size: .75rem; line-height: 1rem; font-weight: 700; color: var(--foreground); }
.service-body .btn { margin-top: 1.5rem; }
@media (min-width: 768px) { .services-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) {
  .services-grid { grid-template-columns: repeat(3, 1fr); }
  .service-card--wide { grid-column: span 2; }
  .service-body h3 { font-size: 1.875rem; line-height: 2.25rem; }
}

/* Segurança */
.safety { position: relative; overflow: hidden; background: var(--primary); color: var(--white); }
.industrial-grid { position: absolute; inset: 0; opacity: .04; background-image: linear-gradient(var(--border) 1px, transparent 1px), linear-gradient(90deg, var(--border) 1px, transparent 1px); background-size: 42px 42px; }
.safety-grid { display: grid; gap: 2rem; }
.safety-item { border-top: 1px solid rgba(250,250,250,.2); padding-top: 1.5rem; }
.safety-top { margin-bottom: 2rem; display: flex; align-items: center; justify-content: space-between; }
.safety-num { font-family: var(--font-display); font-size: 2.25rem; line-height: 2.5rem; font-weight: 700; color: rgba(250,250,250,.15); }
.safety-item p { margin-top: .75rem; font-size: .875rem; line-height: 1.625; color: rgba(250,250,250,.6); }
@media (min-width: 1024px) { .safety-grid { grid-template-columns: repeat(3, 1fr); } }

/* Galeria */
.gallery-grid { display: grid; gap: 1rem; }
.gallery-item { position: relative; overflow: hidden; border-radius: var(--radius); background: var(--primary); }
.gallery-item img { aspect-ratio: 4 / 3; width: 100%; height: 100%; object-fit: cover; opacity: .9; transition: transform 500ms, opacity 500ms; }
.gallery-item:hover img { transform: scale(1.05); opacity: 1; }
.gallery-item figcaption { position: absolute; left: 0; right: 0; bottom: 0; background: rgba(var(--primary-rgb), .85); padding: .75rem 1rem; font-size: .75rem; line-height: 1rem; font-weight: 700; color: var(--white); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); }
@media (min-width: 640px) { .gallery-grid { grid-template-columns: repeat(2, 1fr); } .gallery-item--first { grid-column: span 2; } }
@media (min-width: 1024px) { .gallery-grid { grid-template-columns: repeat(3, 1fr); } .gallery-item--first { grid-column: span 1; } }

/* Setores */
.sectors { border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); background: var(--secondary); padding: 4rem 0; }
.sectors-title { margin-bottom: 2rem; text-align: center; font-size: .75rem; line-height: 1rem; font-weight: 800; text-transform: uppercase; letter-spacing: .18em; color: var(--muted-foreground); }
.sectors-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: .75rem; }
.sector { display: flex; min-height: 7rem; flex-direction: column; align-items: center; justify-content: center; gap: .75rem; border-radius: var(--radius); background: var(--card); padding: 1rem; text-align: center; box-shadow: var(--shadow-card); }
.sector span { font-size: .875rem; font-weight: 700; }
@media (min-width: 640px) { .sectors-grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1024px) { .sectors-grid { grid-template-columns: repeat(5, 1fr); } }

/* Cotação */
.quote-grid { display: grid; gap: 3rem; }
.checklist > p { display: flex; align-items: center; gap: .75rem; font-size: .875rem; font-weight: 700; }
.checklist > p + p { margin-top: 1rem; }
.aside-notice { margin-top: 2rem; border-radius: var(--radius); border-left: 4px solid var(--accent); background: var(--secondary); padding: 1.25rem; font-size: .875rem; font-weight: 700; line-height: 1.625; }
@media (min-width: 1024px) {
  .quote-grid { grid-template-columns: 0.75fr 1.25fr; }
  .quote-aside { position: sticky; top: 7rem; align-self: start; }
}
.quote-form { border-radius: var(--radius); background: var(--card); padding: 1.25rem; box-shadow: var(--shadow-card); }
.form-grid { display: grid; gap: 1.25rem; }
@media (min-width: 640px) { .quote-form { padding: 2rem; } .form-grid { grid-template-columns: repeat(2, 1fr); } .field--full { grid-column: span 2; } }
.field { display: block; font-size: .875rem; font-weight: 700; }
.field > span { margin-bottom: .5rem; display: block; }
.field > span b { color: var(--accent); }
.field-error { margin-top: .25rem; display: block; font-size: .75rem; color: var(--accent); }
.field-error:empty { display: none; }
.input { min-height: 3rem; width: 100%; border-radius: var(--radius); border: 1px solid var(--input); background: var(--background); padding: 0 1rem; font-size: .875rem; font-weight: 400; outline: none; transition: border-color .15s, box-shadow .15s; }
.input::placeholder { color: var(--muted-foreground); }
.input:focus { border-color: var(--accent); box-shadow: 0 0 0 2px rgba(var(--accent-rgb), .15); }
.input.is-invalid { border-color: var(--accent); }
.textarea { min-height: 7rem; padding-top: .75rem; padding-bottom: .75rem; resize: vertical; }
.select-wrap { position: relative; }
.select-wrap select { -webkit-appearance: none; appearance: none; padding-right: 2.5rem; }
.select-wrap select:invalid { color: var(--muted-foreground); }
.select-wrap option { color: var(--foreground); }
.select-icon { pointer-events: none; position: absolute; right: .75rem; top: .875rem; width: 1.25rem; height: 1.25rem; color: var(--muted-foreground); }
.hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; opacity: 0; }
.confirm { margin-top: 1.5rem; display: flex; cursor: pointer; align-items: flex-start; gap: .75rem; border-radius: var(--radius); background: var(--secondary); padding: 1rem; font-size: .875rem; font-weight: 600; line-height: 1.625; }
.confirm input { margin-top: .25rem; width: 1rem; height: 1rem; flex-shrink: 0; accent-color: var(--accent); }
.confirm.is-invalid { box-shadow: inset 0 0 0 1px var(--accent); }
.form-error, .alert-error { margin-top: 1rem; border-radius: var(--radius); border: 1px solid rgba(var(--accent-rgb), .4); background: rgba(var(--accent-rgb), .1); padding: .5rem .75rem; font-size: .75rem; font-weight: 700; color: var(--accent); }
.form-foot { margin-top: 1rem; text-align: center; font-size: .75rem; color: var(--muted-foreground); }
.quote-success { display: grid; min-height: 560px; place-items: center; border-radius: var(--radius); background: var(--card); padding: 2rem; text-align: center; box-shadow: var(--shadow-card); }
.success-icon { margin: 0 auto; display: grid; place-items: center; width: 4rem; height: 4rem; border-radius: 9999px; background: var(--whatsapp); color: #fff; }
.quote-success h3 { margin-top: 1.5rem; font-size: 2.25rem; line-height: 2.5rem; font-weight: 800; text-transform: uppercase; }
.quote-success p { margin: 1rem auto 0; max-width: 28rem; color: var(--muted-foreground); }

/* Rodapé */
.site-footer { background: var(--primary); color: var(--white); }
.footer-grid { display: grid; gap: 2.5rem; padding-top: 4rem; padding-bottom: 4rem; }
.footer-logo { height: 3.5rem; width: auto; }
.footer-brand p { margin-top: 1.25rem; max-width: 28rem; font-size: .875rem; line-height: 1.625; color: rgba(250,250,250,.55); }
.site-footer h3 { font-size: 1.125rem; line-height: 1.75rem; font-weight: 700; text-transform: uppercase; }
.footer-list { margin-top: 1.25rem; font-size: .875rem; color: rgba(250,250,250,.65); }
.footer-list > * + * { margin-top: .75rem; }
.footer-list a, .footer-list p { display: flex; align-items: center; gap: .5rem; }
.footer-list p.start { align-items: flex-start; }
.footer-list a:hover { color: var(--white); }
.footer-bottom { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .5rem; border-top: 1px solid rgba(250,250,250,.1); padding: 1.5rem 1.25rem; text-align: center; font-size: .75rem; color: rgba(250,250,250,.45); }
.footer-bottom a { font-weight: 600; text-underline-offset: 2px; transition: color .15s; }
.footer-bottom a:hover { color: var(--white); text-decoration: underline; }
@media (min-width: 640px) { .footer-grid { grid-template-columns: repeat(2, 1fr); } .footer-brand { grid-column: span 2; } .footer-bottom { flex-direction: row; gap: 1rem; } }
@media (min-width: 1024px) { .footer-grid { grid-template-columns: repeat(4, 1fr); } }

/* WhatsApp flutuante */
.wa-float { position: fixed; bottom: 1.25rem; right: 1.25rem; z-index: 50; display: grid; place-items: center; width: 3.5rem; height: 3.5rem; border-radius: 9999px; background: var(--whatsapp); color: #fff; box-shadow: var(--shadow-action); transition: all .15s; }
.wa-float:hover { transform: translateY(-4px); background: var(--whatsapp-strong); }

/* ================= Área restrita ================= */
.auth-page { display: grid; min-height: 100vh; place-items: center; background: var(--primary); padding: 3rem 1.25rem; }
.auth-box { width: 100%; max-width: 28rem; }
.auth-logo { margin: 0 auto 2rem; height: 3.5rem; width: auto; }
.card { border-radius: var(--radius); background: var(--card); box-shadow: var(--shadow-card); }
.auth-card { padding: 1.5rem; }
@media (min-width: 640px) { .auth-card { padding: 2rem; } }
.auth-title { margin-bottom: 1.5rem; display: flex; align-items: center; gap: .75rem; }
.auth-title .badge-icon { display: grid; place-items: center; width: 2.75rem; height: 2.75rem; border-radius: var(--radius); background: var(--accent); color: #fff; }
.auth-title h1 { font-size: 1.5rem; font-weight: 800; text-transform: uppercase; line-height: 1; }
.auth-title p { margin-top: .25rem; font-size: .75rem; color: var(--muted-foreground); }
.auth-card .field + .field { margin-top: 1rem; }
.small-muted { margin-top: 1rem; text-align: center; font-size: .75rem; color: var(--muted-foreground); }

.admin-page { min-height: 100vh; background: var(--secondary); }
.admin-header { border-bottom: 1px solid rgba(250,250,250,.15); background: var(--primary); color: var(--white); }
.admin-header .bar { display: flex; height: 5rem; align-items: center; justify-content: space-between; gap: 1rem; }
.admin-brand { display: flex; align-items: center; gap: 1rem; }
.admin-brand img { height: 2.5rem; width: auto; }
.admin-brand span { display: none; border-left: 1px solid rgba(250,250,250,.2); padding-left: 1rem; font-size: .875rem; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; }
@media (min-width: 640px) { .admin-brand span { display: block; } }
.admin-actions { display: flex; align-items: center; gap: .5rem; }
.admin-main { padding-top: 2.5rem; padding-bottom: 2.5rem; }
.kpis { margin-bottom: 2rem; display: grid; gap: 1rem; }
@media (min-width: 640px) { .kpis { grid-template-columns: repeat(3, 1fr); } }
.kpi { padding: 1.25rem; }
.kpi p:first-child { font-size: .75rem; font-weight: 800; text-transform: uppercase; letter-spacing: .1em; color: var(--muted-foreground); }
.kpi p:last-child { margin-top: .5rem; font-family: var(--font-display); font-size: 2.25rem; line-height: 2.5rem; font-weight: 700; }
.filters { margin-bottom: 1.5rem; display: flex; flex-wrap: wrap; gap: .5rem; }
.chip { border-radius: 9999px; border: 1px solid var(--border); background: var(--card); padding: .375rem .875rem; font-size: .75rem; font-weight: 700; }
.chip.is-active, .chip:hover { border-color: var(--accent); color: var(--accent); }
.leads > * + * { margin-top: 1rem; }
.lead { padding: 1.25rem; }
@media (min-width: 640px) { .lead { padding: 1.5rem; } }
.lead-top { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 1rem; }
.lead-title { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; }
.lead-title h2 { font-size: 1.25rem; font-weight: 800; text-transform: uppercase; }
.status-pill { border-radius: 9999px; background: var(--secondary); padding: .25rem .75rem; font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.status-pill.is-new { background: var(--accent); color: #fff; }
.lead-sub { margin-top: .25rem; font-size: .875rem; color: var(--muted-foreground); }
.status-form { display: flex; align-items: center; gap: .5rem; font-size: .75rem; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; color: var(--muted-foreground); }
.status-form select { min-height: 2.5rem; border-radius: var(--radius); border: 1px solid var(--input); background: var(--background); padding: 0 .75rem; font-size: .875rem; font-weight: 600; text-transform: none; color: var(--foreground); outline: none; }
.status-form select:focus { border-color: var(--accent); }
.lead-info { margin-top: 1rem; display: grid; gap: .75rem; font-size: .875rem; }
.lead-info > * { display: flex; align-items: center; gap: .5rem; font-weight: 600; word-break: break-word; }
.lead-info a:hover { color: var(--accent); }
@media (min-width: 640px) { .lead-info { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .lead-info { grid-template-columns: repeat(4, 1fr); } }
.lead details { margin-top: 1rem; border-radius: var(--radius); background: var(--secondary); padding: 1rem; font-size: .875rem; }
.lead summary { cursor: pointer; font-size: .75rem; font-weight: 800; text-transform: uppercase; letter-spacing: .1em; color: var(--muted-foreground); }
.lead dl { margin: 1rem 0 0; display: grid; gap: .75rem; }
.lead dt { font-size: .75rem; font-weight: 700; text-transform: uppercase; color: var(--muted-foreground); }
.lead dd { margin: 0; font-weight: 600; white-space: pre-line; }
@media (min-width: 640px) { .lead dl { grid-template-columns: repeat(2, 1fr); } .dl-full { grid-column: 1 / -1; } }
@media (min-width: 1024px) { .lead dl { grid-template-columns: repeat(3, 1fr); } }
.empty { padding: 2.5rem; text-align: center; }
.empty h2 { margin-top: 1rem; font-size: 1.5rem; font-weight: 800; text-transform: uppercase; }
.empty p { margin-top: .5rem; font-size: .875rem; color: var(--muted-foreground); }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

.lead-actions { display: flex; align-items: center; gap: .5rem; }
.btn-delete { display: grid; place-items: center; width: 2.5rem; height: 2.5rem; border-radius: var(--radius); border: 1px solid var(--input); background: var(--background); color: var(--muted-foreground); transition: all .15s; }
.btn-delete:hover { border-color: var(--accent); color: var(--accent); }
