/* ── Deadline Urgency Engine — Task #1049357 ─────────────────────────────────
   5-tier urgency system: URGENT (≤7d) | CLOSING SOON (≤30d) | ACT NOW (≤90d) | OPEN | CLOSED
   CSS design tokens, urgency badges, countdown timers, card glows, URGENT banners.
   ─────────────────────────────────────────────────────────────────────────── */
:root{
  --color-urgent:#dc2626;--color-urgent-bg:#fef2f2;--color-urgent-border:#fca5a5;
  --color-warning:#ea580c;--color-warning-bg:#fff7ed;--color-warning-border:#fed7aa;
  --color-act-now:#d97706;--color-act-now-bg:#fffbeb;--color-act-now-border:#fde68a;
  --color-success:#16a34a;--color-success-bg:#f0fdf4;--color-success-border:#bbf7d0;
  --color-closed:#6b7280;--color-closed-bg:#f3f4f6;--color-closed-border:#d1d5db;
}

/* ── Urgency Badges ── */
.ue-badge{display:inline-flex;align-items:center;gap:0.25rem;font-size:0.68rem;font-weight:800;padding:0.22rem 0.6rem;border-radius:100px;white-space:nowrap;letter-spacing:0.02em;border:1px solid transparent;text-transform:uppercase;}
.ue-badge-urgent{background:var(--color-urgent);color:#fff;border-color:var(--color-urgent);}
.ue-badge-last-day{background:var(--color-urgent);color:#fff;border-color:var(--color-urgent);font-size:0.7rem;}
.ue-badge-closing{background:var(--color-warning-bg);color:var(--color-warning);border-color:var(--color-warning-border);}
.ue-badge-act-now{background:var(--color-act-now-bg);color:var(--color-act-now);border-color:var(--color-act-now-border);}
.ue-badge-open{background:var(--color-success-bg);color:var(--color-success);border-color:var(--color-success-border);}
.ue-badge-closed{background:var(--color-closed-bg);color:var(--color-closed);border-color:var(--color-closed-border);}

/* ── Pulse animation for URGENT badges ── */
@keyframes ue-pulse{0%,100%{box-shadow:0 0 0 0 rgba(220,38,38,0.4);}50%{box-shadow:0 0 0 5px rgba(220,38,38,0);}}
.ue-badge-pulse{animation:ue-pulse 2s ease-in-out infinite;}

/* ── Deadline row in cards ── */
.ue-deadline-row{display:flex;align-items:center;gap:0.4rem;margin:0.35rem 0 0.5rem;}
.ue-countdown-compact{font-size:0.72rem;color:#6b7280;font-weight:500;font-variant-numeric:tabular-nums;}

/* ── Card urgency glow (URGENT only) ── */
.ue-card-urgent{border-color:rgba(220,38,38,0.4)!important;box-shadow:0 0 0 2px rgba(220,38,38,0.12),0 2px 8px rgba(220,38,38,0.08)!important;}
.ue-card-urgent:hover{box-shadow:0 0 0 2px rgba(220,38,38,0.25),0 4px 16px rgba(220,38,38,0.15)!important;}

/* ── Top-right urgency badge on cards ── */
.ue-card-top-badge{position:absolute;top:0.6rem;right:0.6rem;z-index:2;}

/* ── Large countdown timer (detail pages) ── */
.ue-countdown-large{display:flex;align-items:center;gap:0.5rem;margin:0.65rem 0;font-variant-numeric:tabular-nums;}
.ue-countdown-large .ue-cntd-unit{display:flex;flex-direction:column;align-items:center;min-width:2.5rem;}
.ue-countdown-large .ue-cntd-num{font-size:1.75rem;font-weight:800;line-height:1;color:#111827;font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;}
.ue-countdown-large .ue-cntd-label{font-size:0.62rem;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;color:#6b7280;margin-top:0.2rem;}
.ue-countdown-large .ue-cntd-sep{font-size:1.5rem;font-weight:700;color:#d1d5db;margin-bottom:1rem;}
.ue-countdown-urgent .ue-cntd-num{color:var(--color-urgent);}
.ue-countdown-closing .ue-cntd-num{color:var(--color-warning);}
.ue-countdown-act-now .ue-cntd-num{color:var(--color-act-now);}

/* ── URGENT page banner (7-day) ── */
.ue-page-banner{display:flex;align-items:center;gap:0.75rem;padding:0.75rem 1.25rem;background:var(--color-urgent-bg);border-bottom:2px solid var(--color-urgent-border);flex-wrap:wrap;}
.ue-page-banner-icon{font-size:1.3rem;flex-shrink:0;}
.ue-page-banner-text{flex:1;min-width:0;font-size:0.88rem;font-weight:700;color:var(--color-urgent);}
.ue-page-banner-cta{background:var(--color-urgent);color:#fff;padding:0.35rem 0.9rem;border-radius:8px;font-weight:700;font-size:0.8rem;text-decoration:none;white-space:nowrap;flex-shrink:0;transition:opacity 0.15s;}
.ue-page-banner-cta:hover{opacity:0.88;}

/* ── Settlement title urgency badge (detail page) ── */
.ue-title-badge{display:inline-flex;align-items:center;gap:0.3rem;font-size:0.72rem;font-weight:800;padding:0.25rem 0.65rem;border-radius:6px;white-space:nowrap;letter-spacing:0.02em;margin-left:0.5rem;vertical-align:middle;text-transform:uppercase;}

/* ── Mega-menu Closing Soon section ── */
.mega-closing-soon{padding:0.75rem 0;border-top:1px solid #f1f5f9;margin-top:0.5rem;}
.mega-closing-soon-header{font-size:0.68rem;font-weight:800;text-transform:uppercase;letter-spacing:0.07em;color:#6b7280;margin-bottom:0.5rem;padding:0 0 0.25rem;}
.mega-cs-item{display:flex;align-items:center;justify-content:space-between;gap:0.5rem;padding:0.3rem 0;text-decoration:none;color:inherit;border-radius:4px;transition:background 0.1s;}
.mega-cs-item:hover{background:#f9fafb;}
.mega-cs-name{font-size:0.78rem;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px;}
.mega-cs-badge{flex-shrink:0;font-size:0.62rem;font-weight:800;padding:0.15rem 0.45rem;border-radius:4px;white-space:nowrap;}
.mega-cs-urgent{background:var(--color-urgent);color:#fff;}
.mega-cs-closing{background:var(--color-warning-bg);color:var(--color-warning);border:1px solid var(--color-warning-border);}
.mega-cs-act-now{background:var(--color-act-now-bg);color:var(--color-act-now);border:1px solid var(--color-act-now-border);}

/* ── Chat urgency badge ── */
.ue-chat-badge{display:inline-flex;align-items:center;gap:0.2rem;font-size:0.65rem;font-weight:700;padding:0.15rem 0.45rem;border-radius:4px;white-space:nowrap;margin-left:0.3rem;vertical-align:middle;}

/* ── No-deadline static fallback (for noscript) ── */
.ue-static-deadline{font-size:0.75rem;color:#6b7280;font-weight:500;}

/* ── Responsive ── */
@media(max-width:480px){
  .ue-countdown-large .ue-cntd-num{font-size:1.35rem;}
  .ue-countdown-large{gap:0.3rem;}
  .ue-page-banner{padding:0.6rem 1rem;}
  .ue-page-banner-text{font-size:0.82rem;}
}
