/* Base */
body{ scroll-behavior:smooth; }
.navbar-brand img{ filter: drop-shadow(0 2px 8px rgba(0,0,0,.35)); }
.btn-warning{ --bs-btn-color:#111; }
.card .display-6{ font-size: 2rem; }

/* Navbar tweaks */
.navbar .brand-text{ letter-spacing:.6px; }
.object-fit-cover{ object-fit: cover; }

/* Floating WhatsApp button (already added in footer markup) */
a[title="Fale no WhatsApp"]{ text-decoration:none; }

/* === Portfolio uniform sizing === */
.portfolio-card{ aspect-ratio: 16/9; background:#0f0f10; }
.portfolio-img{ width:100%; height:100%; object-fit:cover; display:block; }
@media (max-width: 575.98px){
  .portfolio-card{ aspect-ratio: 16/10; }
}


/* === Footer logo bigger + rounded === */
footer img[src*="logo-elite"],
footer img[src*="logo"],
footer .footer-logo{
  height:64px;
  max-height:64px;
  width:auto;
  border-radius:12px;
  display:block;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,.25));
}
@media (max-width: 768px){
  footer img[src*="logo-elite"],
  footer img[src*="logo"],
  footer .footer-logo{ height:52px; max-height:52px; }
}
 .portfolio-thumb {
    cursor: pointer;
    transition: transform 0.3s ease-in-out;
  }
  .portfolio-thumb:hover img {
    transform: scale(1.05);
    transition: transform 0.4s ease-in-out;
  }
  .portfolio-thumb .overlay {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.4);
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
  }
  .portfolio-thumb:hover .overlay {
    opacity: 1;
  }


/* === Ops center polish === */
.ops-feedback{
  display:flex;
  align-items:flex-start;
  gap:1rem;
  padding:1rem 1.1rem;
  border-radius:1rem;
  border:1px solid rgba(15,23,42,.08);
  background:#fff;
  box-shadow:0 10px 30px rgba(15,23,42,.08);
}
.ops-feedback__icon{
  width:2.5rem;
  height:2.5rem;
  border-radius:.85rem;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  font-size:1.15rem;
}
.ops-feedback__title{ font-weight:700; margin-bottom:.2rem; }
.ops-feedback__message{ color:#475569; font-size:.95rem; line-height:1.45; }
.ops-feedback__close{
  margin-left:auto;
  border:0;
  background:transparent;
  color:#64748b;
  padding:.15rem;
  border-radius:.5rem;
}
.ops-feedback__close:hover{ background:rgba(15,23,42,.05); }
.ops-feedback--success{ border-color:rgba(22,163,74,.18); background:linear-gradient(180deg,#f7fff9 0%,#ffffff 100%); }
.ops-feedback--success .ops-feedback__icon{ background:rgba(22,163,74,.12); color:#15803d; }
.ops-feedback--warning{ border-color:rgba(217,119,6,.18); background:linear-gradient(180deg,#fffaf2 0%,#ffffff 100%); }
.ops-feedback--warning .ops-feedback__icon{ background:rgba(217,119,6,.12); color:#b45309; }
.ops-feedback--danger{ border-color:rgba(220,38,38,.16); background:linear-gradient(180deg,#fff7f7 0%,#ffffff 100%); }
.ops-feedback--danger .ops-feedback__icon{ background:rgba(220,38,38,.12); color:#b91c1c; }
.ops-feedback--info{ border-color:rgba(37,99,235,.16); background:linear-gradient(180deg,#f6faff 0%,#ffffff 100%); }
.ops-feedback--info .ops-feedback__icon{ background:rgba(37,99,235,.12); color:#1d4ed8; }
.ops-status-panel{
  border-radius:1rem;
  padding:1rem 1.05rem;
  border:1px solid rgba(15,23,42,.08);
}
.ops-status-panel--success{ background:#f7fff9; border-color:rgba(22,163,74,.18); }
.ops-status-panel--warning{ background:#fffaf2; border-color:rgba(217,119,6,.18); }
.ops-status-panel--danger{ background:#fff7f7; border-color:rgba(220,38,38,.16); }
.ops-status-panel--info{ background:#f6faff; border-color:rgba(37,99,235,.16); }
.swal2-elite-popup{ border-radius:1rem !important; }


/* === Admin alert polish (global panel) === */
.is-admin-route .alert{
  border:1px solid rgba(15,23,42,.08);
  border-radius:1rem;
  box-shadow:0 10px 30px rgba(15,23,42,.06);
  padding:1rem 1.1rem;
}
.is-admin-route .alert.alert-success{ background:linear-gradient(180deg,#f7fff9 0%,#ffffff 100%); border-color:rgba(22,163,74,.18); color:#166534; }
.is-admin-route .alert.alert-danger{ background:linear-gradient(180deg,#fff7f7 0%,#ffffff 100%); border-color:rgba(220,38,38,.16); color:#991b1b; }
.is-admin-route .alert.alert-warning{ background:linear-gradient(180deg,#fffaf2 0%,#ffffff 100%); border-color:rgba(217,119,6,.18); color:#92400e; }
.is-admin-route .alert.alert-info,
.is-admin-route .alert.alert-secondary,
.is-admin-route .alert.alert-light{ background:linear-gradient(180deg,#f8fbff 0%,#ffffff 100%); border-color:rgba(37,99,235,.12); color:#334155; }
.is-admin-route .alert .btn-close{ opacity:.65; }
.is-admin-route .card.shadow-sm{ box-shadow:0 12px 28px rgba(15,23,42,.06) !important; }
.is-admin-route .empty-state-soft{ border:1px dashed rgba(148,163,184,.45); border-radius:1rem; background:#f8fafc; color:#475569; padding:1rem 1.05rem; }


/* === Backup central responsive polish === */
.is-admin-route code{ white-space:normal; word-break:break-all; }
.is-admin-route .card .text-break{ word-break:break-word; }
.backup-toolbar .btn{ white-space:nowrap; }
.orcamento-timeline{ display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:.75rem; }
.orcamento-timeline__step{ border:1px solid rgba(15,23,42,.08); border-radius:1rem; padding:.9rem 1rem; background:#fff; }
.orcamento-timeline__step--done{ background:#f7fff9; border-color:rgba(22,163,74,.18); }
.orcamento-timeline__step--current{ background:#f6faff; border-color:rgba(37,99,235,.16); }
.orcamento-timeline__step--refused{ background:#fff7f7; border-color:rgba(220,38,38,.16); }
.orcamento-soft-note{ border:1px dashed rgba(148,163,184,.4); border-radius:1rem; background:#f8fafc; padding:1rem; }
