/* ConcreTrack Theme Override for RH-PWA — rh.concretrack.com.br */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800;900&display=swap');

:root {
  --primary: #E07A3A;
  --primary-strong: #c96830;
  --secondary: #E07A3A;
  --accent: #0D3B66;
  --bg: #F2F3F5;
  --background: #F2F3F5;
  --surface: #ffffff;
  --surface-strong: #ffffff;
  --surface-dark: #343B43;
  --text: #343B43;
  --text-muted: #5A6270;
  --success: #059669;
  --warning: #d97706;
  --danger: #dc2626;
  --info: #1976D2;
  --shadow-soft: 0 2px 10px rgba(0,0,0,0.06);
  --shadow-card: 0 4px 20px rgba(0,0,0,0.08);
  --radius-xl: 14px;
  --radius-lg: 12px;
  --radius-md: 10px;
  --radius-sm: 8px;
  --border: rgba(15,23,42,0.08);
  --nav-h: 80px;
  --header-h: 72px;
}

/* FONT ------------------------------------------------------------------- */
*, *::before, *::after {
  font-family: "Montserrat", "Segoe UI", system-ui, sans-serif !important;
}

/* BODY — flat background, remove gradient blobs ----------------------------- */
body { background: #F2F3F5 !important; }
body::before, body::after { display: none !important; }

/* APP HEADER / TOPBAR ------------------------------------------------------ */
.app-header {
  background: #343B43 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border-bottom: none !important;
  box-shadow: none !important;
}
/* orange → navy accent stripe at bottom of header */
.app-header::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important; right: 0 !important; bottom: 0 !important; top: auto !important;
  height: 3px !important;
  background: linear-gradient(90deg, #E07A3A, #0D3B66) !important;
  border-radius: 0 !important; transform: none !important;
}

.brand__mark {
  background: linear-gradient(135deg, #E07A3A, #c96830) !important;
  box-shadow: 0 4px 14px rgba(224,122,58,0.35) !important;
  border-radius: 10px !important;
}
.brand__eyebrow { color: #BFC5CC !important; }
.brand__title   { color: #ffffff !important; font-weight: 800 !important; }

.btn-icon, .avatar-badge {
  background: rgba(255,255,255,0.08) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  color: #ffffff !important;
  box-shadow: none !important;
}
.btn-icon:hover { background: rgba(255,255,255,0.14) !important; }

/* HERO CARD ---------------------------------------------------------------- */
.hero-card {
  background: linear-gradient(135deg, #0D3B66 0%, #1565a0 100%) !important;
  box-shadow: 0 4px 24px rgba(13,59,102,0.3) !important;
  backdrop-filter: none !important; -webkit-backdrop-filter: none !important;
  border: none !important; border-radius: 14px !important;
}
.hero-card::after { background: rgba(224,122,58,0.25) !important; }

/* ALL CARDS — remove glassmorphism ---------------------------------------- */
.panel, .floating-card, .form-card, .detail-card, .stat-card, .chart-card,
.profile-card, .list-card, .sol-card, .shortcut-card, .type-card,
.flow-step, .permission-card, .storage-card, .auth-card {
  background: #ffffff !important;
  backdrop-filter: none !important; -webkit-backdrop-filter: none !important;
  border: 1px solid rgba(15,23,42,0.07) !important;
  box-shadow: 0 2px 10px rgba(0,0,0,0.05) !important;
}
.shortcut-card { border-radius: 14px !important; }
.shortcut-card--accent {
  background: linear-gradient(135deg, rgba(224,122,58,0.06), #ffffff) !important;
  border-color: rgba(224,122,58,0.18) !important;
}
.shortcut-card--epi {
  background: linear-gradient(135deg, rgba(217,119,6,0.07), #ffffff) !important;
  border-color: rgba(217,119,6,0.18) !important;
}
.shortcut-card__icon {
  background: rgba(224,122,58,0.1) !important;
  color: #E07A3A !important; border-radius: 12px !important;
}

/* AUTH --------------------------------------------------------------------- */
.auth-shell { background: #F2F3F5 !important; }
.auth-card  { box-shadow: 0 4px 24px rgba(0,0,0,0.1) !important; }

/* BOTTOM NAV --------------------------------------------------------------- */
.bottom-nav {
  background: #343B43 !important;
  backdrop-filter: none !important; -webkit-backdrop-filter: none !important;
  box-shadow: 0 -2px 16px rgba(0,0,0,0.25) !important;
  border-radius: 18px !important; border: none !important;
}
.bottom-nav__link { color: #BFC5CC !important; }
.bottom-nav__link.is-active {
  background: rgba(224,122,58,0.18) !important; color: #E07A3A !important;
}
.bottom-nav__link:hover:not(.bottom-nav__link--fab) {
  color: #ffffff !important; background: rgba(255,255,255,0.08) !important;
}
.bottom-nav__fab {
  background: linear-gradient(135deg, #E07A3A, #c96830) !important;
  box-shadow: 0 8px 24px rgba(224,122,58,0.4) !important;
  border-radius: 16px !important;
}

/* FORM MENU SHEET ---------------------------------------------------------- */
.form-menu-sheet__panel {
  background: #ffffff !important;
  backdrop-filter: none !important; -webkit-backdrop-filter: none !important;
  border-radius: 18px 18px 0 0 !important;
}

/* BUTTONS ------------------------------------------------------------------ */
.btn--primary {
  background: linear-gradient(135deg, #E07A3A, #c96830) !important;
  box-shadow: 0 4px 14px rgba(224,122,58,0.3) !important;
}
.btn--secondary { background: rgba(224,122,58,0.1) !important; color: #c96830 !important; }
.btn--ghost     { background: rgba(52,59,67,0.07) !important;  color: #343B43 !important; }

/* INPUTS ------------------------------------------------------------------- */
.search-input, .select-input, .text-input, .textarea-input {
  background: #ffffff !important;
  border: 1.5px solid #dde2e8 !important;
  border-radius: 10px !important;
  backdrop-filter: none !important;
}
.search-input:focus, .select-input:focus, .text-input:focus, .textarea-input:focus {
  border-color: #E07A3A !important;
  box-shadow: 0 0 0 3px rgba(224,122,58,0.12) !important;
}

/* KPI / METRIC ------------------------------------------------------------- */
.stat-card__value { color: #0D3B66 !important; }
.metric-bar__fill { background: linear-gradient(90deg, #E07A3A, #c96830) !important; }
.metric-chip         { background: rgba(13,59,102,0.08) !important; color: #0D3B66 !important; }
.metric-chip--warn   { background: rgba(217,119,6,0.1)  !important; color: #d97706 !important; }
.metric-chip--danger { background: rgba(220,38,38,0.1)  !important; color: #dc2626 !important; }
.metric-chip--neutral{ background: rgba(52,59,67,0.07)  !important; color: #343B43 !important; }

/* STATUS PILLS ------------------------------------------------------------- */
.status-pill { background: rgba(5,150,105,0.1) !important; color: #059669 !important; }

/* NOTICE ------------------------------------------------------------------- */
.notice { background: rgba(13,59,102,0.06) !important; color: #0D3B66 !important; }

/* LOADING ------------------------------------------------------------------ */
.loading__dot { background: linear-gradient(135deg, #E07A3A, #c96830) !important; }

/* SEGMENTED ---------------------------------------------------------------- */
.segmented__btn.is-active { color: #E07A3A !important; }

/* TOAST -------------------------------------------------------------------- */
.toast                     { background: #343B43 !important; }
.toast[data-tone="success"] { background: #065f46 !important; }
.toast[data-tone="warning"] { background: #92400e !important; }
.toast[data-tone="danger"]  { background: #991b1b !important; }

/* TABLES ------------------------------------------------------------------- */
.data-table th { background: rgba(13,59,102,0.06) !important; color: #5A6270 !important; }
.epi-table th  { background: #343B43 !important; }

/* TIMELINE ----------------------------------------------------------------- */
.timeline-item__dot { background: rgba(224,122,58,0.1) !important; color: #E07A3A !important; }

/* FLOW STEPS --------------------------------------------------------------- */
.flow-step__index { background: rgba(224,122,58,0.1) !important; color: #E07A3A !important; }

/* HEADINGS ----------------------------------------------------------------- */
.section-heading h2 { font-weight: 800 !important; color: #343B43 !important; }

/* AVATARS ------------------------------------------------------------------ */
.avatar-badge--lg { background: #0D3B66 !important; }

/* TYPE CARD ACTIVE --------------------------------------------------------- */
.type-card.is-active {
  outline-color: rgba(224,122,58,0.3) !important;
  background: linear-gradient(135deg, rgba(224,122,58,0.1), #ffffff) !important;
}

/* MODAL SHEET -------------------------------------------------------------- */
.modal-sheet { background: #ffffff !important; backdrop-filter: none !important; }

/* ALERT BANNER ------------------------------------------------------------- */
.alert-banner {
  background: linear-gradient(135deg, rgba(217,119,6,0.12), rgba(224,122,58,0.07)) !important;
  border-color: rgba(217,119,6,0.3) !important;
}

/* LEGAL / SIGNATURE -------------------------------------------------------- */
.legal-box      { background: #fffbeb !important; border-color: #fde68a !important; }
.signature-area { border-color: #dde2e8 !important; }

/* MISC --------------------------------------------------------------------- */
.pill { background: rgba(255,255,255,0.18) !important; }
.stat-card__label, .section-heading__overline, .card-subtitle { color: #5A6270 !important; }

/* LOGIN PAGE — header sits on light background ----------------------------- */
body[data-page="login"] .brand__eyebrow { color: #5A6270 !important; }
body[data-page="login"] .brand__title   { color: #343B43 !important; }
body[data-page="login"] .brand__mark    { box-shadow: 0 4px 14px rgba(224,122,58,0.25) !important; }
