/* ══════════════════════════════════════════════════════════════════
   FAMOUS RALLY — COMPONENTE COMUNE
   Folosite de mai multe pagini: homepage, showroom, profilul mașinii,
   înscriere. Tokenurile vin din css/global.css.
   ══════════════════════════════════════════════════════════════════ */

[hidden]{display:none !important}

/* ── Cardul unei mașini — js/util.js → carCardHTML() ──────── */
.car-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:clamp(14px,2vw,24px)}
.car-tile{position:relative;display:flex;flex-direction:column;overflow:hidden;
  border-radius:var(--r-lg);background:var(--card);box-shadow:var(--shadow);color:inherit;text-decoration:none;
  transition:transform .45s var(--ease),box-shadow .4s var(--ease)}
.car-tile:hover{transform:translateY(-6px);box-shadow:var(--shadow-h)}
.car-tile::after{content:'';position:absolute;top:0;right:0;width:36px;height:36px;z-index:2;pointer-events:none;
  background:linear-gradient(45deg,transparent 48%,var(--accent) 48%,var(--accent) 54%,transparent 54%)}
.car-tile__img{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--img-ph)}
.car-tile__img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .9s var(--ease)}
.car-tile:hover .car-tile__img img{transform:scale(1.05)}
.car-tile__tag,.car-tile__votes{position:absolute;z-index:2;padding:5px 10px;border-radius:5px;
  font-family:var(--font-ui);font-style:italic;font-weight:700;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase}
.car-tile__tag{top:12px;left:12px;background:var(--accent);color:var(--accent-ink)}
.car-tile__votes{bottom:12px;left:12px;background:rgba(14,14,16,.82);color:#fff}
.car-tile__body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:8px}
.car-tile__body h3{font-size:18px;line-height:1.15}
.car-tile__meta{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;
  font-family:var(--font-ui);font-style:italic;font-weight:600;font-size:12px;letter-spacing:.06em;
  text-transform:uppercase;color:var(--text-3)}

/* Plăcuța de înmatriculare */
.car-tile__plate,.plate-tag{display:inline-block;padding:2px 8px 2px 10px;border-radius:4px;background:#fff;color:#0E0E10;
  font-style:normal;font-family:var(--font-mono);font-weight:700;letter-spacing:.08em;
  box-shadow:inset 4px 0 0 #1F4BB8,inset 0 0 0 1px rgba(0,0,0,.18)}

/* ── Stare (înscrieri, aplicații) ─────────────────────────── */
.status-pill{display:inline-flex;align-items:center;gap:8px;padding:5px 12px;border-radius:var(--r-pill);
  font-family:var(--font-ui);font-style:italic;font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;
  background:var(--tint-2);color:var(--text-2)}
.status-pill::before{content:'';width:7px;height:7px;border-radius:50%;background:currentColor}
.status-pill[data-kind="open"],.status-pill[data-kind="accepted"]{background:rgba(47,168,95,.14);color:var(--success)}
.status-pill[data-kind="closed"],.status-pill[data-kind="rejected"]{background:rgba(229,72,77,.12);color:var(--danger-text)}
.status-pill[data-kind="soon"],.status-pill[data-kind="pending"]{background:var(--accent-a16);color:var(--accent-text)}

.empty-note{width:100%;padding:56px 0;text-align:center;font-family:var(--font-ui);font-style:italic;
  font-weight:600;letter-spacing:.12em;text-transform:uppercase;font-size:12.5px;color:var(--text-3)}

/* ── Banda de jos (instalare aplicație / versiune nouă) ───── */
.app-banner{position:fixed;left:12px;right:12px;bottom:12px;z-index:9997;display:flex;align-items:center;gap:14px;
  max-width:720px;margin:0 auto;padding:14px 16px;border-radius:var(--r-lg);background:var(--card);
  box-shadow:var(--shadow-lg),inset 0 0 0 1px var(--accent-a30)}
.app-banner__text{flex:1;display:flex;flex-direction:column;gap:2px;font-size:13.5px;color:var(--text-2)}
.app-banner__text b{font-family:var(--font-ui);font-style:italic;letter-spacing:.1em;text-transform:uppercase;color:var(--text)}
.app-banner__close{width:40px;height:40px;border:0;border-radius:var(--r-md);background:var(--tint-2);color:var(--text-2);cursor:pointer}

/* ── Acord cookie-uri de statistică (js/analytics.js) ─────── */
.consent-banner{position:fixed;left:12px;right:12px;bottom:12px;z-index:9998;max-width:760px;margin:0 auto;
  display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:16px 18px;border-radius:var(--r-lg);
  background:var(--card);box-shadow:var(--shadow-lg),inset 0 0 0 1px var(--line)}
.consent-banner p{flex:1 1 320px;margin:0;font-size:13.5px;line-height:1.55;color:var(--text-2)}
.consent-banner__actions{display:flex;gap:10px}
.foot-link{background:none;border:0;padding:0;cursor:pointer;font-size:13px;color:rgba(255,255,255,.45);text-decoration:underline;text-underline-offset:3px}
.foot-link:hover{color:var(--accent)}

/* ── Filtre (showroom) ────────────────────────────────────── */
.filter-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:24px}
.filter-bar .premium-input,.filter-bar select,.filter-bar input{min-height:44px}
.chip-toggle{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border-radius:var(--r-pill);
  border:0;background:var(--tint-2);color:var(--text-2);cursor:pointer;
  font-family:var(--font-ui);font-style:italic;font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase}
.chip-toggle[aria-pressed="true"]{background:var(--accent);color:var(--accent-ink)}
