/* ATENDEPRO — Central de contato */
:root {
  --apc-bg: #090a0c;
  --apc-panel: #111317;
  --apc-panel-2: #171a1f;
  --apc-border: rgba(255,255,255,.10);
  --apc-text: #f5f7fa;
  --apc-muted: #9aa3ad;
  --apc-orange: #ff6a00;
  --apc-orange-2: #ff8a33;
  --apc-shadow: 0 30px 90px rgba(0,0,0,.55);
}

.apc-fab {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 2147483000;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 52px;
  padding: 0 18px;
  border: 1px solid rgba(255,106,0,.45);
  border-radius: 999px;
  color: #fff;
  background: linear-gradient(135deg, rgba(255,106,0,.98), rgba(224,76,0,.98));
  box-shadow: 0 18px 45px rgba(255,106,0,.24), 0 8px 28px rgba(0,0,0,.32);
  font: 700 14px/1.1 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing: .01em;
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
  -webkit-tap-highlight-color: transparent;
}
.apc-fab:hover { transform: translateY(-2px); box-shadow: 0 22px 55px rgba(255,106,0,.3), 0 10px 30px rgba(0,0,0,.4); filter: saturate(1.08); }
.apc-fab:focus-visible { outline: 3px solid rgba(255,138,51,.45); outline-offset: 3px; }
.apc-fab svg { width: 19px; height: 19px; flex: 0 0 auto; }
.apc-fab-dot { width: 8px; height: 8px; border-radius: 50%; background: #9cff57; box-shadow: 0 0 0 5px rgba(156,255,87,.12); }

.apc-backdrop {
  position: fixed;
  inset: 0;
  z-index: 2147483001;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 22px;
  background: rgba(2,3,5,.74);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
.apc-backdrop.apc-open { display: flex; animation: apcFade .18s ease-out; }

.apc-modal {
  width: min(880px, 100%);
  max-height: min(760px, calc(100vh - 44px));
  overflow: auto;
  border: 1px solid var(--apc-border);
  border-radius: 26px;
  background:
    radial-gradient(circle at 92% 4%, rgba(255,106,0,.12), transparent 30%),
    linear-gradient(180deg, rgba(18,20,24,.99), rgba(10,11,14,.99));
  color: var(--apc-text);
  box-shadow: var(--apc-shadow);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  animation: apcUp .22s cubic-bezier(.2,.8,.2,1);
}
.apc-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding: 26px 28px 21px;
  border-bottom: 1px solid var(--apc-border);
}
.apc-kicker { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 9px; color: var(--apc-orange-2); font-size: 11px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.apc-kicker::before { content:""; width: 22px; height: 1px; background: var(--apc-orange); }
.apc-title { margin: 0; font-size: clamp(24px, 4vw, 34px); line-height: 1.05; letter-spacing: -.035em; }
.apc-sub { margin: 9px 0 0; max-width: 620px; color: var(--apc-muted); font-size: 14px; line-height: 1.55; }
.apc-close { display:grid; place-items:center; width:42px; height:42px; flex:0 0 42px; border:1px solid var(--apc-border); border-radius:14px; background:rgba(255,255,255,.035); color:#fff; cursor:pointer; transition:.18s ease; }
.apc-close:hover { background:rgba(255,255,255,.075); transform:rotate(3deg); }
.apc-close svg { width:19px; height:19px; }

.apc-body { display: grid; grid-template-columns: .85fr 1.15fr; gap: 0; }
.apc-side { padding: 26px 28px; border-right: 1px solid var(--apc-border); background: rgba(255,255,255,.012); }
.apc-side-title { margin:0 0 14px; font-size:13px; color:#c7cdd4; font-weight:700; }
.apc-contact-card { display:flex; gap:13px; align-items:center; padding:15px; margin-bottom:11px; border:1px solid var(--apc-border); border-radius:17px; background:rgba(255,255,255,.025); text-decoration:none; color:inherit; transition:.18s ease; }
.apc-contact-card:hover { border-color:rgba(255,106,0,.38); background:rgba(255,106,0,.055); transform:translateY(-1px); }
.apc-contact-icon { display:grid; place-items:center; width:40px; height:40px; flex:0 0 40px; border-radius:13px; background:rgba(255,106,0,.12); color:var(--apc-orange-2); }
.apc-contact-icon svg { width:19px; height:19px; }
.apc-contact-card strong { display:block; font-size:13px; margin-bottom:3px; }
.apc-contact-card span { display:block; color:var(--apc-muted); font-size:12px; word-break:break-word; }
.apc-security { display:flex; gap:10px; margin-top:18px; padding:13px 14px; border-radius:14px; background:rgba(156,255,87,.05); border:1px solid rgba(156,255,87,.12); color:#b9c5ce; font-size:11px; line-height:1.45; }
.apc-security svg { width:16px; height:16px; flex:0 0 16px; color:#9cff57; margin-top:1px; }

.apc-form-wrap { padding:26px 28px 28px; }
.apc-grid { display:grid; grid-template-columns:1fr 1fr; gap:13px; }
.apc-field { display:flex; flex-direction:column; gap:7px; }
.apc-field.apc-span { grid-column:1 / -1; }
.apc-field label { color:#c9cfd6; font-size:11px; font-weight:750; letter-spacing:.02em; }
.apc-field input, .apc-field select, .apc-field textarea {
  width:100%; box-sizing:border-box; border:1px solid var(--apc-border); border-radius:13px; background:#0c0e11; color:#f5f7fa; outline:none; padding:12px 13px; font:500 13px/1.4 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; transition:border-color .16s ease, box-shadow .16s ease, background .16s ease;
}
.apc-field textarea { min-height:112px; resize:vertical; }
.apc-field input::placeholder, .apc-field textarea::placeholder { color:#68717b; }
.apc-field input:focus, .apc-field select:focus, .apc-field textarea:focus { border-color:rgba(255,106,0,.58); box-shadow:0 0 0 3px rgba(255,106,0,.09); background:#101216; }
.apc-actions { display:grid; grid-template-columns:1.2fr .8fr; gap:10px; margin-top:16px; }
.apc-btn { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:46px; border-radius:13px; border:1px solid var(--apc-border); padding:0 15px; font:800 12px/1 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; cursor:pointer; transition:.18s ease; }
.apc-btn svg { width:17px; height:17px; }
.apc-btn-primary { color:#fff; border-color:rgba(255,106,0,.55); background:linear-gradient(135deg,#ff6a00,#e84f00); box-shadow:0 12px 30px rgba(255,106,0,.16); }
.apc-btn-primary:hover { transform:translateY(-1px); box-shadow:0 16px 35px rgba(255,106,0,.23); }
.apc-btn-secondary { color:#e5e9ee; background:rgba(255,255,255,.035); }
.apc-btn-secondary:hover { background:rgba(255,255,255,.07); }
.apc-note { margin:11px 2px 0; color:#707a85; font-size:10.5px; line-height:1.45; }

body.apc-lock { overflow:hidden !important; }
@keyframes apcFade { from {opacity:0} to {opacity:1} }
@keyframes apcUp { from {opacity:0; transform:translateY(16px) scale(.985)} to {opacity:1; transform:none} }

@media (max-width: 760px) {
  .apc-backdrop { align-items:flex-end; padding:0; }
  .apc-modal { width:100%; max-height:92vh; border-radius:24px 24px 0 0; border-left:0; border-right:0; border-bottom:0; }
  .apc-top { padding:22px 20px 18px; }
  .apc-body { grid-template-columns:1fr; }
  .apc-side { padding:18px 20px; border-right:0; border-bottom:1px solid var(--apc-border); }
  .apc-form-wrap { padding:20px; }
  .apc-grid, .apc-actions { grid-template-columns:1fr; }
  .apc-fab { right:14px; bottom:14px; min-height:48px; padding:0 15px; }
}

@media (prefers-reduced-motion: reduce) {
  .apc-fab, .apc-contact-card, .apc-close, .apc-btn { transition:none; }
  .apc-backdrop.apc-open, .apc-modal { animation:none; }
}

/* Complemento V3 — formulário via Supabase */
.apc-contact-card.apc-static { cursor: default; }
.apc-contact-card.apc-static:hover { transform: none; }
.apc-hp { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; pointer-events: none !important; }
.apc-feedback { min-height: 18px; margin: 10px 2px 0; font-size: 11px; line-height: 1.45; font-weight: 650; }
.apc-feedback.apc-success { color: #9cff57; }
.apc-feedback.apc-error { color: #ffb08d; }
.apc-btn:disabled { opacity: .65; cursor: wait; transform: none !important; }

