*{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#0e0e11;
  --bg2:#141418;
  --bg3:#1c1c21;
  --bg4:#24242a;
  --bg5:#2e2e36;
  --surface:#141418;
  --surface2:#1c1c21;
  --accent:#3b82f6;
  --accent2:#2563eb;
  --accent-dim:rgba(59,130,246,0.10);
  --accent-dim2:rgba(59,130,246,0.04);
  --red:#f87171;
  --red-dim:rgba(248,113,113,0.08);
  --amber:#fbbf24;
  --amber-dim:rgba(251,191,36,0.08);
  --blue:#60a5fa;
  --blue-dim:rgba(96,165,250,0.08);
  --purple:#a78bfa;
  --purple-dim:rgba(167,139,250,0.08);
  --green:#34d399;
  --green-dim:rgba(52,211,153,0.08);
  --text:#e8e8ed;
  --text2:#8e8e9a;
  --text3:#52525e;
  --border:#1e1e25;
  --border2:#2a2a33;
  --shadow:0 1px 4px rgba(0,0,0,0.5),0 1px 2px rgba(0,0,0,0.3);
  --shadow-md:0 6px 20px rgba(0,0,0,0.5),0 2px 6px rgba(0,0,0,0.3);
  --font-head:'Syne',sans-serif;
  --font-body:'DM Sans',sans-serif;
  --r:6px;
  --r2:8px;
}
html,body{height:100%;font-family:var(--font-body);background:var(--bg);color:var(--text);font-size:14px;line-height:1.5;overflow:hidden}

/* LAYOUT */
.app{display:flex;height:100vh}

/* SIDEBAR */
.sidebar{
  width:60px;
  background:var(--bg2);
  border-right:1px solid var(--border);
  display:flex;flex-direction:column;align-items:center;
  padding:14px 0;gap:1px;
  flex-shrink:0;
  transition:width 0.18s ease;
  overflow:hidden;
  position:relative;z-index:10;
}
.sidebar.expanded{width:210px}
.sidebar-top{display:flex;flex-direction:column;align-items:center;width:100%;padding:0 10px;gap:2px}
.sidebar:not(.expanded) .sidebar-top{padding:0;width:100%;align-items:center}
.sidebar-logo{
  display:flex;align-items:center;gap:10px;
  padding:8px 10px;width:100%;border-radius:var(--r);
  margin-bottom:12px;cursor:pointer;
}
.sidebar:not(.expanded) .sidebar-logo{width:40px;height:40px;padding:0;justify-content:center;margin-left:0;margin-right:0}
.logo-icon{
  width:32px;height:32px;border-radius:8px;
  background:linear-gradient(145deg,#3b82f6 0%,#1d4ed8 100%);
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;
  box-shadow:0 2px 8px rgba(59,130,246,0.35);
}
.logo-text{
  font-size:14px;font-weight:700;white-space:nowrap;opacity:0;letter-spacing:-0.03em;
  transition:opacity 0.12s ease 0.05s;
}
.logo-text .lt-flota{color:var(--text)}
.logo-text .lt-manager{color:var(--accent)}
.sidebar:not(.expanded) .logo-text{display:none}
.sidebar.expanded .logo-text{opacity:1}
.nav-btn{
  display:flex;align-items:center;gap:10px;
  width:100%;padding:9px 10px;border-radius:var(--r);
  border:none;background:transparent;cursor:pointer;
  color:var(--text3);font-family:var(--font-body);font-size:13px;font-weight:500;
  transition:background 0.14s ease,color 0.14s ease;position:relative;white-space:nowrap;
}
.sidebar:not(.expanded) .nav-btn{width:40px;height:40px;padding:0;justify-content:center;margin-left:0;margin-right:0}
.nav-btn:hover{background:rgba(255,255,255,0.05);color:var(--text2)}
.nav-btn.active{background:rgba(59,130,246,0.10);color:var(--accent)}
.nav-btn.active::after{content:'';position:absolute;right:0;top:25%;bottom:25%;width:2.5px;background:var(--accent);border-radius:2px;opacity:0;transition:opacity 0.15s}
.sidebar.expanded .nav-btn.active::after{opacity:1}
.nav-btn svg{flex-shrink:0;width:17px;height:17px}
.sidebar:not(.expanded) .nav-btn svg{width:19px;height:19px}
.nav-label{opacity:0;transition:opacity 0.12s ease 0.05s;overflow:hidden}
.sidebar:not(.expanded) .nav-label{display:none}
.sidebar.expanded .nav-label{opacity:1}
.nav-badge{
  margin-left:auto;background:var(--red);color:#fff;
  font-size:10px;font-weight:600;padding:1px 6px;border-radius:4px;
  display:none;
}
/* Badge afișat doar când există count ȘI sidebar e expandat */
.sidebar.expanded .nav-badge.has-count{display:inline-block}
.sidebar-bottom{margin-top:auto;width:100%;padding:0 10px}
.sidebar:not(.expanded) .sidebar-bottom{padding:0;display:flex;justify-content:center}
.user-pill{
  display:flex;align-items:center;gap:10px;
  width:100%;min-height:44px;
  padding:8px 10px;border-radius:10px;
  border:1px solid transparent;background:transparent;
  cursor:pointer;overflow:visible;
  transition:background 0.14s ease,border-color 0.14s ease,box-shadow 0.14s ease;
}
.sidebar:not(.expanded) .user-pill{width:40px;height:40px;min-height:40px;padding:0;border-color:transparent;background:transparent;justify-content:center}
.sidebar:not(.expanded) .user-pill:hover{background:rgba(255,255,255,0.035)}
.sidebar.expanded .user-pill{background:transparent;border-color:transparent;box-shadow:none}
.user-avatar{
  width:30px;height:30px;border-radius:50%;flex-shrink:0;
  background:#2563eb;border:none;
  display:flex;align-items:center;justify-content:center;
  font-size:11px;font-weight:700;color:#fff;
  box-shadow:none;
  transition:background 0.14s ease;
}
.sidebar:not(.expanded) .user-avatar{width:32px;height:32px;font-size:12px;background:#1d4ed8}
.user-info{opacity:0;transition:opacity 0.12s ease 0.05s;min-width:0}
.sidebar:not(.expanded) .user-info{display:none}
.sidebar.expanded .user-info{opacity:1}
.user-name{font-size:12px;font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.user-role{font-size:10px;color:var(--text3);white-space:nowrap;text-transform:capitalize}

/* TOGGLE BTN */
.toggle-btn{
  position:absolute;top:47px;right:-14px;
  width:28px;height:28px;border-radius:50%;
  background:var(--accent-dim);border:1px solid var(--accent);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;color:var(--accent);
  transition:all 0.18s ease;z-index:20;
  box-shadow:0 2px 8px rgba(0,0,0,0.35);
}
.toggle-btn svg{width:15px;height:15px;transition:transform 0.25s}
.toggle-btn:hover{background:var(--accent);color:#fff;transform:scale(1.08);box-shadow:0 4px 14px rgba(79,126,248,0.5)}
.toggle-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.sidebar.expanded .toggle-btn svg{transform:rotate(180deg)}
/* Puls discret de atenție cât sidebar-ul e restrâns — semnalează că se poate extinde. */
.sidebar:not(.expanded) .toggle-btn{animation:togglePulse 2.6s ease-in-out infinite}
@keyframes togglePulse{
  0%,100%{box-shadow:0 2px 8px rgba(0,0,0,0.35),0 0 0 0 rgba(79,126,248,0.5)}
  55%{box-shadow:0 2px 8px rgba(0,0,0,0.35),0 0 0 6px rgba(79,126,248,0)}
}
@media (prefers-reduced-motion:reduce){.sidebar:not(.expanded) .toggle-btn{animation:none}}

/* BACK BUTTON (înapoi la Dashboard) — ghost, pe ecranele Tichete / Solicitare / Istoric */
.screen-back-bar{display:flex;margin-bottom:14px}
.btn-back{
  display:inline-flex;align-items:center;gap:7px;
  padding:7px 13px 7px 10px;border-radius:9px;
  background:transparent;border:1px solid var(--border2);
  color:var(--text2);font-family:var(--font-body);font-size:12.5px;font-weight:500;
  cursor:pointer;transition:all 0.15s ease;
}
.btn-back svg{transition:transform 0.15s ease}
.btn-back:hover{background:var(--bg4);border-color:var(--accent);color:var(--text)}
.btn-back:hover svg{transform:translateX(-2px);color:var(--accent)}
.btn-back:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* MAIN */
.main{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--bg)}

/* TOPBAR */
.topbar{
  padding:13px 28px;
  display:flex;align-items:center;justify-content:space-between;
  border-bottom:1px solid var(--border);
  background:var(--bg2);
  flex-shrink:0;
}
.topbar-left h1{font-family:var(--font-head);font-size:16px;font-weight:700;color:var(--text);letter-spacing:-0.03em}
.topbar-left p{font-size:11px;color:var(--text3);margin-top:2px;letter-spacing:0.01em}
.topbar-right{display:flex;align-items:center;gap:8px}
.btn{
  display:inline-flex;align-items:center;gap:6px;
  padding:8px 16px;border-radius:8px;
  border:1px solid var(--border2);background:var(--bg3);
  font-family:var(--font-body);font-size:13px;font-weight:500;
  cursor:pointer;color:var(--text2);transition:all 0.15s;
  white-space:nowrap;letter-spacing:0.01em;
}
.btn:hover{background:var(--bg4);color:var(--text);border-color:var(--border2)}
.btn-accent{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}
.btn-accent:hover{background:var(--accent2);border-color:var(--accent2);color:#fff}
.btn-sm{padding:6px 12px;font-size:12px}
.btn-ghost{border-color:transparent;background:transparent}
.btn-ghost:hover{background:rgba(255,255,255,0.05);border-color:var(--border)}

/* CONTENT */
.content{flex:1;overflow-y:auto;padding:28px 32px;scrollbar-width:thin;scrollbar-color:var(--bg5) transparent}
.content::-webkit-scrollbar{width:4px}
.content::-webkit-scrollbar-track{background:transparent}
.content::-webkit-scrollbar-thumb{background:var(--bg5);border-radius:4px}
.screen{display:none}
.screen.active{display:block;animation:slideIn 0.22s cubic-bezier(0.16,1,0.3,1) both}
.screen.active.slide-back{animation:slideBack 0.22s cubic-bezier(0.16,1,0.3,1) both}
@keyframes slideIn{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}
@keyframes slideBack{from{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}
@keyframes fadeUp{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}

/* STATS */
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:32px}
.stat-card{
  background:var(--bg2);
  border:1px solid var(--border);
  border-radius:12px;padding:24px 26px 22px;
  position:relative;overflow:hidden;
  transition:border-color 0.2s,background 0.2s;
  cursor:pointer;
}
.stat-card::before{display:none}
.stat-card:hover{border-color:var(--border2);background:var(--bg3)}
/* Carduri navigabile (click → ecran țintă): ridicare + umbră + inel focus tastatură */
.stat-card--nav{transition:border-color 0.2s,background 0.2s,transform 0.2s,box-shadow 0.2s}
.stat-card--nav:hover{transform:translateY(-2px);border-color:var(--border2);box-shadow:0 8px 22px rgba(0,0,0,0.28)}
.stat-card--nav:active{transform:translateY(0)}
.stat-card--nav:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.stat-icon{
  width:30px;height:30px;border-radius:7px;
  display:flex;align-items:center;justify-content:center;
  margin-bottom:20px;background:var(--bg3);
}
.stat-icon.red{color:var(--red)}
.stat-icon.amber{color:var(--amber)}
.stat-icon.blue{color:var(--blue)}
.stat-icon.accent{color:var(--accent)}
.stat-icon.purple{color:var(--purple)}
.stat-icon.green{color:var(--green)}
.stat-val{font-size:34px;font-weight:700;color:var(--text);line-height:1;letter-spacing:-0.05em;font-family:var(--font-head)}
.stat-label{font-size:12px;color:var(--text2);margin-top:10px;font-weight:500}
.stat-sub{font-size:11px;color:var(--text3);margin-top:3px}

/* DASHBOARD HEADER */
.dash-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
.section-label{font-size:11px;font-weight:700;color:var(--text3);letter-spacing:0.08em;text-transform:uppercase}
/* SECTION TITLE */
.screen-title{font-family:var(--font-head);font-size:22px;font-weight:700;color:var(--text);letter-spacing:-0.04em;margin-bottom:24px}
.screen-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}
.screen-title-row .screen-title{margin-bottom:0}
.export-row{display:flex;align-items:center;gap:8px}
.date-input{
  padding:6px 10px;border-radius:var(--r);
  border:1px solid var(--border2);background:var(--bg3);
  font-family:var(--font-body);font-size:12px;color:var(--text2);
  width:130px;transition:all 0.15s;
}
.date-input:focus{outline:none;border-color:var(--accent);color:var(--text)}
.date-sep{font-size:12px;color:var(--text3)}
.date-picker{position:relative;display:inline-block}
.dp-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:8px;width:132px;height:32px;padding:5px 9px;border-radius:8px;border:1px solid var(--border2);background:var(--bg2);font-family:var(--font-body);font-size:11px;color:var(--text2);cursor:pointer;transition:all 0.15s;white-space:nowrap}
.dp-btn:hover{border-color:var(--accent);color:var(--text)}
.dp-btn.open,.dp-btn.active{border-color:var(--accent);background:var(--accent-dim);color:var(--accent)}
.dp-btn svg{flex-shrink:0;transition:transform 0.2s}
.dp-btn.open svg{transform:rotate(180deg)}
.dp-popup{position:absolute;top:calc(100% + 6px);right:0;z-index:60;background:var(--bg2);border:1px solid var(--border2);border-radius:10px;padding:12px;box-shadow:0 8px 28px rgba(0,0,0,0.45);width:256px}
.dp-popup[hidden]{display:none}
.dp-header{display:flex;align-items:center;justify-content:space-between;padding:0 4px 10px;border-bottom:1px solid var(--border);margin-bottom:10px;gap:8px}
.dp-title{font-family:var(--font-head);font-size:14px;font-weight:700;color:var(--text);letter-spacing:-0.02em;flex:1;text-align:center;text-transform:capitalize}
.dp-nav{background:transparent;border:1px solid var(--border);color:var(--text2);cursor:pointer;padding:4px 8px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;transition:all 0.15s;font-family:var(--font-body)}
.dp-nav:hover:not(:disabled){background:var(--bg3);color:var(--text);border-color:var(--border2)}
.dp-nav:disabled{opacity:0.25;cursor:not-allowed}
.dp-weekdays,.dp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.dp-weekdays{margin-bottom:5px}
.dp-weekdays span{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;color:var(--text3);text-align:center;padding:3px 0}
.dp-day{height:28px;border-radius:6px;border:1px solid transparent;background:transparent;color:var(--text2);font-family:var(--font-body);font-size:11px;font-weight:600;cursor:pointer;transition:all 0.12s;text-align:center}
.dp-day:hover:not(:disabled){background:var(--bg3);color:var(--text)}
.dp-day.selected{background:var(--accent);color:#fff;border-color:var(--accent)}
.dp-day.today:not(.selected){border-color:var(--accent);color:var(--accent)}
.dp-day.muted{opacity:0;pointer-events:none}
.dp-day:disabled{opacity:0.24;cursor:not-allowed;text-decoration:line-through}

/* TICKET LIST */
.ticket-list{display:flex;flex-direction:column;gap:4px;background:transparent}
.ticket-row{
  background:var(--bg2);border:1px solid var(--border);
  border-radius:8px;
  padding:14px 18px;
  cursor:pointer;transition:all 0.15s;
  display:flex;align-items:center;gap:14px;
  position:relative;overflow:hidden;
}
.ticket-row::before{
  content:'';position:absolute;left:0;top:0;bottom:0;width:3px;
  background:var(--row-accent, transparent);border-radius:8px 0 0 8px;
}
.ticket-row:hover{background:var(--bg3);border-color:var(--border2);transform:translateX(3px)}
.ticket-row.dauna{--row-accent:var(--red)}
.ticket-row.combustibil{--row-accent:var(--amber)}
.ticket-row.anvelope{--row-accent:var(--accent)}
.ticket-row.cheie{--row-accent:var(--purple)}
.ticket-row.utilizator{--row-accent:var(--blue)}
.ticket-row.auto,.ticket-row.rezervare{--row-accent:#ec4899}
.ticket-row.tehnic{--row-accent:var(--green)}

/* BADGES */
.badge{
  font-size:11px;font-weight:500;padding:3px 9px;
  border-radius:4px;white-space:nowrap;flex-shrink:0;
}
.badge-dauna{background:var(--red-dim);color:var(--red)}
.badge-combustibil{background:var(--amber-dim);color:var(--amber)}
.badge-anvelope{background:var(--accent-dim);color:var(--accent)}
.badge-cheie{background:var(--purple-dim);color:var(--purple)}
.badge-utilizator{background:var(--blue-dim);color:var(--blue)}
.badge-auto,.badge-rezervare{background:rgba(236,72,153,0.10);color:#ec4899}
.badge-tehnic{background:var(--green-dim);color:var(--green)}
.badge-inspectie{background:rgba(20,184,166,0.12);color:#14b8a6}

/* STATUS */
.status-pill{
  display:inline-flex;align-items:center;gap:5px;
  font-size:11px;font-weight:500;padding:3px 8px;border-radius:4px;
}
.status-nou{background:var(--amber-dim);color:var(--amber)}
.status-procesare{background:var(--blue-dim);color:var(--blue)}
.status-rezolvat{background:var(--accent-dim);color:var(--accent)}
.s-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0;display:inline-block}
.dot-nou{background:var(--amber)}
.dot-procesare{background:var(--blue)}
.dot-rezolvat{background:var(--accent)}

.ticket-info{flex:1;min-width:0}
.ticket-nr{font-size:13px;font-weight:600;color:var(--text);font-family:var(--font-head)}
.ticket-desc{font-size:12px;color:var(--text2);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ticket-meta{text-align:right;flex-shrink:0}
.ticket-time{font-size:11px;color:var(--text3);margin-top:4px}
.ticket-auto{
  display:inline-flex;align-items:center;gap:6px;
  background:var(--bg4);border:1px solid var(--border);
  border-radius:20px;padding:3px 10px;font-size:11px;
  color:var(--text2);font-weight:500;flex-shrink:0;
}
.auto-dot{width:5px;height:5px;border-radius:50%;background:var(--text3);flex-shrink:0}
.km-box{display:inline-flex;align-items:center;gap:5px;background:var(--bg4);border:1px solid var(--border);border-radius:8px;padding:3px 10px;font-size:11px;color:var(--text2);font-weight:500}
.km-box svg{opacity:0.55;flex-shrink:0}
.km-loading{opacity:0.5;font-style:italic}
.presence-row{display:flex;align-items:center;gap:5px;justify-content:flex-end}
.presence-avatar{width:24px;height:24px;border-radius:50%;background:var(--accent);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:2px solid var(--bg);box-shadow:0 0 0 2px var(--accent)}
.presence-label{font-size:10px;color:var(--accent);font-weight:500}

/* DETAIL SCREEN */
.back-row{display:flex;align-items:center;gap:12px;margin-bottom:20px}
.breadcrumb{font-size:12px;color:var(--text3)}

.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,340px);gap:12px}
.detail-card{
  background:var(--bg2);border:1px solid var(--border);
  border-radius:10px;padding:22px 24px;box-shadow:var(--shadow);
}
.detail-card-title{
  font-size:11px;font-weight:600;
  text-transform:uppercase;letter-spacing:0.06em;color:var(--text3);
  margin-bottom:14px;
}
.detail-header-row{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px}
.detail-nr{font-family:var(--font-head);font-size:22px;font-weight:700;color:var(--text);margin-bottom:6px}
.detail-time{font-size:12px;color:var(--text2)}
.fields-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:20px}
.field-item{background:var(--bg3);border:1px solid var(--border);border-radius:var(--r);padding:12px 14px}
.field-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:0.06em;color:var(--text3);margin-bottom:4px}
.field-val{font-size:13px;font-weight:500;color:var(--text)}
.photo-row{display:flex;gap:8px;margin-bottom:20px}
.photo-thumb{
  width:80px;height:60px;border-radius:var(--r);
  background:var(--bg4);border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  font-size:10px;color:var(--text3);
}
.divider{border:none;border-top:1px solid var(--border);margin:16px 0}

/* TIMELINE */
.timeline{display:flex;flex-direction:column;gap:0}
.tl-item{display:flex;gap:14px;padding-bottom:16px;position:relative}
.tl-item:last-child{padding-bottom:0}
.tl-left{display:flex;flex-direction:column;align-items:center;flex-shrink:0;padding-top:2px}
.tl-dot-wrap{width:10px;height:10px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center}
.tl-dot-inner{width:6px;height:6px;border-radius:50%}
.tl-line{flex:1;width:1px;background:var(--border);margin:4px 0}
.tl-item:last-child .tl-line{display:none}
.tl-content{flex:1;padding-top:0}
.tl-title{font-size:13px;font-weight:600;color:var(--text);line-height:1.3}
.tl-time{font-size:11px;color:var(--text3);margin-top:2px}
.tl-msg{
  font-size:12px;color:var(--text2);margin-top:8px;
  background:var(--bg3);border:1px solid var(--border);
  padding:10px 12px;border-radius:var(--r);line-height:1.5;
}

/* RESPONSE BOX */
.response-card{
  background:var(--bg2);border:1px solid var(--border);
  border-radius:var(--r2);padding:22px;
}
.resp-select,.resp-textarea,.form-input,.form-select{
  width:100%;padding:9px 12px;border-radius:var(--r);
  border:1px solid var(--border2);background:var(--bg3);
  font-family:var(--font-body);font-size:13px;color:var(--text);
  transition:all 0.15s;
}
.resp-select:focus,.resp-textarea:focus,.form-input:focus,.form-select:focus{
  outline:none;border-color:var(--accent);box-shadow:0 0 0 2px rgba(59,130,246,0.15);
}
.resp-select{margin-bottom:10px;color:var(--text2)}
.resp-textarea{resize:vertical;min-height:220px;line-height:1.55;font-size:13.5px;padding:14px 16px;color:var(--text);transition:border-color 0.18s, box-shadow 0.18s, background 0.18s}
.resp-textarea.has-quick-fill{border-color:var(--accent);box-shadow:inset 0 0 0 1px rgba(59,130,246,0.15)}
.resp-textarea.is-preview{background:rgba(59,130,246,0.04);border-style:dashed;color:var(--text2);font-style:italic}
.resp-actions{display:flex;gap:8px;margin-top:12px;justify-content:flex-end}

/* QUICK REPLY DROPDOWN (custom) */
.qrd{position:relative;margin-bottom:10px}
.qrd-trigger{
  width:100%;padding:10px 14px;border-radius:var(--r);
  border:1px solid var(--border2);background:var(--bg3);
  font-family:var(--font-body);font-size:13px;color:var(--text2);
  display:flex;align-items:center;justify-content:space-between;gap:8px;
  cursor:pointer;transition:all 0.15s;
}
.qrd-trigger:hover{border-color:var(--accent);color:var(--text)}
.qrd-trigger.is-open{border-color:var(--accent);box-shadow:0 0 0 2px rgba(59,130,246,0.15)}
.qrd-chevron{transition:transform 0.18s;flex-shrink:0;opacity:0.6}
.qrd-trigger.is-open .qrd-chevron{transform:rotate(180deg)}
.qrd-popup{
  position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:60;
  background:var(--bg2);border:1px solid var(--border2);border-radius:10px;
  box-shadow:0 12px 32px rgba(0,0,0,0.4);
  max-height:340px;overflow-y:auto;padding:6px;
  display:none;
  animation:qrdIn 0.18s cubic-bezier(0.16,1,0.3,1);
}
.qrd-popup.is-open{display:block}
@keyframes qrdIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
.qrd-group{padding:4px 0}
.qrd-group+.qrd-group{border-top:1px solid var(--border)}
.qrd-group-title{
  font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;
  color:var(--text3);padding:6px 10px 4px;
}
/* Diferentiere fara iconite (29.05.2026): bordura stanga colorata 3px + tag pill pe dreapta.
   Stari kind: approve (verde), info (chihlimbar), reject (rosu). Hover: translateX 2px + tint. */
.qrd-option{
  display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;text-align:left;
  padding:11px 12px 11px 13px;border-radius:8px;border:none;background:transparent;
  border-left:3px solid transparent;
  font-family:var(--font-body);font-size:13.5px;color:var(--text);font-weight:500;
  cursor:pointer;transition:background 0.14s, transform 0.14s, border-left-color 0.14s;
}
.qrd-option:hover{transform:translateX(2px);background:var(--bg3)}
.qrd-option--approve{border-left-color:#10b981}
.qrd-option--approve:hover{background:rgba(16,185,129,0.10)}
.qrd-option--reject{border-left-color:#ef4444}
.qrd-option--reject:hover{background:rgba(239,68,68,0.10)}
.qrd-option--info{border-left-color:#f59e0b}
.qrd-option--info:hover{background:rgba(245,158,11,0.10)}
.qrd-label{flex:1;min-width:0;color:var(--text)}
.qrd-tag{
  font-size:9px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;
  padding:3px 8px;border-radius:4px;flex-shrink:0;line-height:1;
}
.qrd-option--approve .qrd-tag{background:rgba(16,185,129,0.14);color:#10b981}
.qrd-option--reject .qrd-tag{background:rgba(239,68,68,0.14);color:#ef4444}
.qrd-option--info .qrd-tag{background:rgba(245,158,11,0.14);color:#f59e0b}
.qrd-empty{padding:14px;text-align:center;font-size:12px;color:var(--text3)}

/* FORM SCREEN */
.form-wrap{max-width:800px;margin:0 auto}
.form-intro{margin-bottom:20px}
.form-intro p{font-size:13px;color:var(--text3);line-height:1.6}
.type-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;margin-bottom:28px}
.type-btn{
  border:1px solid var(--border);border-radius:10px;
  background:var(--bg2);cursor:pointer;text-align:left;
  transition:border-color 0.15s,background 0.15s;
  position:relative;overflow:hidden;
  display:flex;flex-direction:column;padding:0;
}
.type-btn::after{display:none}
.type-btn:hover{border-color:var(--border2);background:var(--bg3)}
.type-btn.selected{border-color:var(--accent);background:var(--accent-dim2)}
.type-btn.selected .type-name{color:var(--accent)}
.type-btn-icon-wrap{padding:18px 20px 12px;display:flex;align-items:center}
.type-btn-icon-wrap svg{
  width:34px;height:34px;padding:8px;border-radius:8px;
  flex-shrink:0;transition:all 0.15s;
  background:var(--bg3);stroke:var(--text3);
}
.type-btn:hover .type-btn-icon-wrap svg{background:var(--bg4);stroke:var(--text2)}
.type-btn.selected .type-btn-icon-wrap svg{background:var(--accent-dim);stroke:var(--accent)}
.type-btn--dauna .type-btn-icon-wrap svg,
.type-btn--combustibil .type-btn-icon-wrap svg,
.type-btn--anvelope .type-btn-icon-wrap svg,
.type-btn--cheie .type-btn-icon-wrap svg,
.type-btn--utilizator .type-btn-icon-wrap svg,
.type-btn--rezervare .type-btn-icon-wrap svg,
.type-btn--tehnic .type-btn-icon-wrap svg,
.type-btn--inspectie .type-btn-icon-wrap svg{background:var(--bg3);stroke:var(--text3)}
.type-btn--dauna:hover .type-btn-icon-wrap svg,
.type-btn--combustibil:hover .type-btn-icon-wrap svg,
.type-btn--anvelope:hover .type-btn-icon-wrap svg,
.type-btn--cheie:hover .type-btn-icon-wrap svg,
.type-btn--utilizator:hover .type-btn-icon-wrap svg,
.type-btn--rezervare:hover .type-btn-icon-wrap svg,
.type-btn--tehnic:hover .type-btn-icon-wrap svg,
.type-btn--inspectie:hover .type-btn-icon-wrap svg{background:var(--bg4);stroke:var(--text2)}
.type-btn.selected .type-btn-icon-wrap svg{background:var(--accent-dim)!important;stroke:var(--accent)!important}
.type-btn-body{padding:0 20px 18px}

/* === SOLICITARE TRANSITIONS === */
@keyframes solCardOut{to{opacity:0;transform:translateY(-8px) scale(0.96)}}
@keyframes solFormIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes solBackIn{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:translateX(0)}}
@keyframes solCardIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}

.form-wrap.sol-active{max-width:100%!important;}

#sol-back-bar{
  display:none;align-items:center;gap:12px;
  margin-bottom:20px;
  animation:solBackIn 0.3s cubic-bezier(0.16,1,0.3,1) 0.08s both;
}
.sol-back-btn{
  display:flex;align-items:center;gap:7px;
  border:none;background:transparent;cursor:pointer;
  color:var(--text3);font-size:13px;font-family:var(--font-body);
  padding:6px 10px 6px 6px;border-radius:var(--r);
  transition:color 0.15s,background 0.15s;line-height:1;
}
.sol-back-btn:hover{color:var(--text);background:var(--bg3);}
.sol-back-btn svg{flex-shrink:0;transition:transform 0.22s cubic-bezier(0.16,1,0.3,1);}
.sol-back-btn:hover svg{transform:translateX(-4px);}
.sol-sep{width:1px;height:14px;background:var(--border2);flex-shrink:0;}
.sol-chip{
  display:flex;align-items:center;gap:7px;
  padding:4px 12px 4px 8px;
  background:var(--accent-dim2);
  border:1px solid rgba(59,130,246,0.18);
  border-radius:20px;
}
.sol-chip svg{stroke:var(--accent);width:13px;height:13px;flex-shrink:0;}
.sol-chip-name{font-size:11px;font-weight:700;color:var(--accent);font-family:var(--font-head);letter-spacing:0.02em;text-transform:uppercase;}

#dynamic-form.sol-expanded{animation:solFormIn 0.38s cubic-bezier(0.16,1,0.3,1) 0.05s both;}
.type-name{font-size:13px;font-weight:600;color:var(--text);letter-spacing:-0.01em;line-height:1.3;transition:color 0.15s}
.type-desc{font-size:11px;color:var(--text3);margin-top:3px;line-height:1.4}
.form-card{
  background:var(--bg2);border:1px solid var(--border);
  border-radius:12px;padding:24px;box-shadow:var(--shadow);
}
.form-card-title{font-family:var(--font-head);font-size:16px;font-weight:700;color:var(--text);margin-bottom:4px;letter-spacing:-0.03em}
.form-card-sub{font-size:12px;color:var(--text3);margin-bottom:24px;line-height:1.5;padding-bottom:20px;border-bottom:1px solid var(--border)}
.form-group{margin-bottom:16px}
.form-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--text3);margin-bottom:7px;display:block}
.upload-zone{
  border:1px dashed var(--border2);border-radius:var(--r);
  padding:20px;text-align:center;cursor:pointer;
  background:var(--bg3);transition:all 0.15s;
}
.upload-zone:hover{border-color:var(--accent);background:var(--accent-dim2)}
.upload-zone-text{font-size:12px;color:var(--text2)}
.upload-zone-sub{font-size:10px;color:var(--text3);margin-top:3px}
.upload-zone.dragover{border-color:var(--accent);background:var(--accent-dim);border-style:solid}
.attach-preview{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.attach-item{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;width:76px}
.attach-thumb-img{width:72px;height:72px;object-fit:cover;border-radius:var(--r);border:1px solid var(--border);cursor:pointer}
.attach-file-icon{width:72px;height:72px;background:var(--bg4);border:1px solid var(--border);border-radius:var(--r);display:flex;align-items:center;justify-content:center;font-size:22px}
.attach-name{font-size:9px;color:var(--text3);text-align:center;max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}
.attach-remove{position:absolute;top:-5px;right:-5px;width:16px;height:16px;border-radius:50%;background:var(--red);border:none;color:#fff;font-size:11px;font-weight:700;cursor:pointer;line-height:1;padding:0;display:flex;align-items:center;justify-content:center}
.attach-loading{opacity:0.5}
.det-attach-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.det-attach-img{width:80px;height:80px;object-fit:cover;border-radius:var(--r);border:1px solid var(--border);cursor:pointer;transition:opacity 0.15s;display:block}
.det-attach-img:hover{opacity:0.8}
.det-attach-file{display:flex;flex-direction:column;align-items:center;gap:4px;width:80px;text-decoration:none}
.det-attach-file-icon{width:80px;height:80px;background:var(--bg4);border:1px solid var(--border);border-radius:var(--r);display:flex;align-items:center;justify-content:center;font-size:26px;transition:background 0.15s}
.det-attach-file:hover .det-attach-file-icon{background:var(--bg5)}
.det-attach-fname{font-size:9px;color:var(--text3);text-align:center;max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}

/* FILTER BAR */
.filter-bar{display:flex;align-items:center;gap:8px;margin-bottom:18px;flex-wrap:wrap}
.search-wrap{position:relative;flex:1;min-width:200px}
.search-wrap svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--text3);pointer-events:none;flex-shrink:0}
.search-input{width:100%;padding:9px 12px 9px 34px;border-radius:8px;border:1px solid var(--border2);background:var(--bg2);font-family:var(--font-body);font-size:13px;color:var(--text);transition:all 0.15s;height:38px}
.search-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px rgba(59,130,246,0.12)}
.search-input::placeholder{color:var(--text3)}
.filter-select{padding:7px 10px;border-radius:8px;border:1px solid var(--border2);background:var(--bg2);font-family:var(--font-body);font-size:12px;color:var(--text2);cursor:pointer;transition:all 0.15s;height:38px}
.filter-select:focus{outline:none;border-color:var(--accent)}
.filter-select.active{border-color:var(--accent);background:var(--accent-dim);color:var(--accent)}
/* Custom month picker — replaces native <input type="month"> for site-themed dropdown */
.month-picker{position:relative;display:inline-block}
.month-picker.month-picker-compact .mp-btn{height:30px;padding:4px 8px;font-size:11px}
.month-picker.month-picker-compact .mp-popup{right:0;left:auto}
.month-picker.month-picker-compact .mp-month{height:30px}
.mp-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:8px;border:1px solid var(--border2);background:var(--bg2);font-family:var(--font-body);font-size:12px;color:var(--text2);cursor:pointer;transition:all 0.15s;height:38px;white-space:nowrap}
.mp-btn:hover{border-color:var(--accent);color:var(--text)}
.mp-btn.active{border-color:var(--accent);background:var(--accent-dim);color:var(--accent)}
.mp-btn svg{transition:transform 0.2s}
.mp-btn.open svg{transform:rotate(180deg)}
.mp-popup{position:absolute;top:calc(100% + 6px);right:0;z-index:50;background:var(--bg2);border:1px solid var(--border2);border-radius:10px;padding:12px;box-shadow:0 8px 28px rgba(0,0,0,0.45);min-width:240px}
.mp-popup[hidden]{display:none}
.mp-header{display:flex;align-items:center;justify-content:space-between;padding:0 4px 10px;border-bottom:1px solid var(--border);margin-bottom:10px;gap:8px}
.mp-year{font-family:var(--font-head);font-size:14px;font-weight:700;color:var(--text);letter-spacing:-0.02em;flex:1;text-align:center}
.mp-nav{background:transparent;border:1px solid var(--border);color:var(--text2);cursor:pointer;padding:4px 8px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;transition:all 0.15s;font-family:var(--font-body)}
.mp-nav:hover:not(:disabled){background:var(--bg3);color:var(--text);border-color:var(--border2)}
.mp-nav:disabled{opacity:0.25;cursor:not-allowed}
.mp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}
.mp-month{background:transparent;border:1px solid transparent;color:var(--text2);padding:8px 4px;border-radius:6px;font-family:var(--font-body);font-size:12px;font-weight:500;cursor:pointer;transition:all 0.12s;text-align:center}
.mp-month:hover{background:var(--bg3);color:var(--text)}
.mp-month.selected{background:var(--accent);color:#fff;font-weight:600;border-color:var(--accent)}
.mp-month.selected:hover{background:var(--accent);opacity:0.92}
.mp-clear{width:100%;background:transparent;border:1px solid var(--border);color:var(--text2);padding:7px;border-radius:6px;margin-top:12px;font-family:var(--font-body);font-size:11px;font-weight:500;cursor:pointer;transition:all 0.15s;letter-spacing:0.03em}
.mp-clear:hover{background:var(--bg3);color:var(--text);border-color:var(--border2)}
.reply-upload-zone{border:1px dashed var(--border2);border-radius:var(--r);padding:7px 12px;display:flex;align-items:center;gap:7px;cursor:pointer;background:var(--bg3);transition:all 0.15s;margin-top:8px}
.reply-upload-zone:hover{border-color:var(--accent);background:var(--accent-dim2)}

/* SUCCESS */
.success-wrap{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;max-width:440px;margin:0 auto}
.success-icon{
  width:64px;height:64px;border-radius:50%;
  background:var(--accent-dim);border:1px solid var(--accent-dim);
  display:flex;align-items:center;justify-content:center;margin-bottom:20px;
}
.success-title{font-family:var(--font-head);font-size:22px;font-weight:700;color:var(--text);margin-bottom:8px}
.success-sub{font-size:13px;color:var(--text2);margin-bottom:24px;line-height:1.6}

/* ISTORIC */
/* Bară căutare globală tichete (Istoric mașini) — inline în rândul de export, crește
   pentru a umple spațiul și împinge controalele de export la dreapta. Aliniată ca înălțime. */
.istoric-search{position:relative;display:flex;align-items:center;flex:1 1 240px;min-width:200px;margin:0}
.istoric-search-ic{position:absolute;left:12px;color:var(--text3);pointer-events:none;transition:color 0.18s ease}
.istoric-search-input{width:100%;height:34px;padding:0 32px;border-radius:9px;border:1px solid var(--border2);background:var(--bg2);color:var(--text);font-family:var(--font-body);font-size:13px;letter-spacing:0.01em;transition:border-color 0.18s ease,background 0.18s ease,box-shadow 0.18s ease}
.istoric-search-input::placeholder{color:var(--text3)}
.istoric-search-input:hover{border-color:var(--bg5)}
.istoric-search-input:focus{outline:none;border-color:var(--accent);background:var(--bg3);box-shadow:0 0 0 3px var(--accent-dim)}
.istoric-search:focus-within .istoric-search-ic{color:var(--accent)}
.istoric-search-clear{position:absolute;right:6px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text3);font-size:18px;line-height:1;cursor:pointer;border-radius:6px;transition:background 0.15s ease,color 0.15s ease}
.istoric-search-clear:hover{background:var(--bg4);color:var(--text)}
.istoric-results-title{margin-bottom:12px}
.istoric-layout{display:flex;gap:20px;align-items:flex-start}
.fleet-panel{
  width:240px;flex-shrink:0;
  background:var(--bg2);border:1px solid var(--border);
  border-radius:10px;padding:16px;box-shadow:var(--shadow);
}
.fleet-panel-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--text3);margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--border)}
.fleet-panel-inner{max-height:calc(100vh - 200px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--bg5) transparent}
.fleet-panel-inner::-webkit-scrollbar{width:3px}
.fleet-panel-inner::-webkit-scrollbar-track{background:transparent}
.fleet-panel-inner::-webkit-scrollbar-thumb{background:var(--bg5);border-radius:3px}
.tree-region{margin-bottom:14px}
/* Scară de intensitate (același albastru): Companie = plin opac + bară solidă;
   Regiune = fill albastru translucid + romb; Centru = punct gol (cel mai discret). */
.tree-region-label{
  display:flex;align-items:center;gap:7px;
  font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.07em;
  color:var(--text2);padding:4px 9px;margin-bottom:5px;
  background:var(--accent-dim);border:1px solid rgba(59,130,246,0.16);border-radius:5px;
}
.tree-region-label::before{
  content:'';flex-shrink:0;width:5px;height:5px;transform:rotate(45deg);
  background:var(--accent);box-shadow:0 0 0 2px rgba(59,130,246,0.16);
}
.tree-center-label{
  display:flex;align-items:center;gap:7px;
  font-size:11px;font-weight:600;color:var(--text3);
  padding:3px 8px;margin:0 0 2px 6px;
}
.tree-center-label::before{
  content:'';flex-shrink:0;width:4px;height:4px;border-radius:50%;
  border:1px solid var(--text3);background:transparent;
}
/* Header panou „Structură flotă" — titlu Syne cu accent tick + toolbar 2 butoane */
.fleet-panel-head{margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--border)}
.fleet-panel-heading{font-family:var(--font-head);font-size:12px;font-weight:700;letter-spacing:0.03em;color:var(--text);display:flex;align-items:center;gap:8px;margin-bottom:11px}
.fleet-panel-heading::before{content:'';width:3px;height:14px;border-radius:2px;background:linear-gradient(var(--accent),var(--accent2))}
.fleet-panel-actions{display:flex;gap:7px}
.fleet-act{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:5px;height:30px;padding:0 8px;border-radius:7px;font-family:var(--font-body);font-size:11.5px;font-weight:600;letter-spacing:0.01em;cursor:pointer;white-space:nowrap;border:1px solid var(--border2);background:var(--bg3);color:var(--text2);transition:background 0.16s ease,border-color 0.16s ease,color 0.16s ease,transform 0.16s ease,box-shadow 0.16s ease}
.fleet-act-ic{flex-shrink:0;opacity:0.9;transition:transform 0.25s ease}
.fleet-act:hover{background:var(--bg4);color:var(--text);transform:translateY(-1px)}
.fleet-act:hover .fleet-act-ic{transform:rotate(90deg)}
.fleet-act:active{transform:translateY(0)}
.fleet-act--primary{background:linear-gradient(180deg,var(--accent),var(--accent2));border-color:transparent;color:#fff;box-shadow:0 2px 8px rgba(59,130,246,0.25)}
.fleet-act--primary .fleet-act-ic{opacity:1}
.fleet-act--primary:hover{background:linear-gradient(180deg,#4c8ef7,var(--accent));color:#fff;box-shadow:0 5px 14px rgba(59,130,246,0.4)}
.tree-companie{margin-bottom:18px}
.tree-companie-label{font-size:11px;font-weight:800;letter-spacing:0.05em;text-transform:uppercase;color:var(--text);padding:6px 9px;margin-bottom:8px;background:var(--bg3);border-left:2px solid var(--accent);border-radius:5px}
.tree-companie .tree-region{margin-left:8px}
.car-item{
  display:flex;align-items:center;gap:8px;
  padding:6px 10px;border-radius:var(--r);cursor:pointer;
  font-size:12px;color:var(--text2);transition:all 0.12s;margin-bottom:1px;
  margin-left:16px;
}
.car-item:hover{background:var(--bg4);color:var(--text)}
.car-item.active{background:var(--accent-dim);color:var(--accent)}
.car-item-dot{width:5px;height:5px;border-radius:50%;background:currentColor;opacity:0.5;flex-shrink:0}
.car-item.active .car-item-dot{opacity:1}
.car-result-area{flex:1;min-width:0}
.car-placeholder{
  background:var(--bg2);border:1px solid var(--border);
  border-radius:var(--r2);padding:60px 20px;
  text-align:center;color:var(--text3);
}
.car-placeholder svg{margin-bottom:12px;opacity:0.3}

/* CAR CARD */
.car-card{
  background:var(--bg2);border:1px solid var(--border);
  border-radius:var(--r2);padding:22px;
}
.car-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px}
.car-nr{font-family:var(--font-head);font-size:22px;font-weight:700;color:var(--text)}
.car-model{font-size:12px;color:var(--text2);margin-top:3px}
.car-user-label{font-size:11px;color:var(--text3)}
.car-user-name{font-size:13px;font-weight:600;color:var(--text);margin-top:2px;text-align:right}
.car-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:20px}
.car-stat{background:var(--bg3);border:1px solid var(--border);border-radius:var(--r);padding:12px 14px}
.history-table{width:100%;border-collapse:collapse;font-size:12px}
.history-table th{text-align:left;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:var(--text3);padding:8px 10px;border-bottom:1px solid var(--border)}
.history-table td{padding:10px;border-bottom:1px solid var(--border);color:var(--text);transition:background 0.15s}
.history-table tr:last-child td{border-bottom:none}
.history-table tr:hover td{background:var(--bg3)}

/* PV SECTIONS */
.pv-section{background:var(--bg3);border:1px solid var(--border);border-radius:var(--r);padding:14px;margin-bottom:12px}
.pv-section-title{font-size:10px;text-transform:uppercase;letter-spacing:0.07em;color:var(--text3);font-weight:700;margin-bottom:12px;border-bottom:1px solid var(--border);padding-bottom:8px}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
/* Signature pad — paper inset into dark UI */
/* Căsuță de semnătură — „hârtie” off-white CONSECVENTĂ în ambele teme (pena e închisă -> semnătura
   ajunge corect în PDF-ul alb). Wrapper-ul e gol; aspectul de hârtie e pe canvas + overlay linie de bază. */
.sig-container{
  position:relative;
  margin-top:6px;
}
.sig-canvas{
  display:block;
  width:100%;
  height:170px;
  cursor:crosshair;
  touch-action:none;
  background:linear-gradient(180deg,#f7f9fc 0%,#e9eef5 100%);
  border:1px solid rgba(15,23,42,0.12);
  border-radius:10px;
  box-shadow:0 1px 0 rgba(255,255,255,0.7) inset,0 6px 18px -10px rgba(0,0,0,0.40);
  transition:border-color 0.18s ease,box-shadow 0.18s ease;
}
.sig-canvas:hover{border-color:rgba(59,130,246,0.45);box-shadow:0 1px 0 rgba(255,255,255,0.7) inset,0 6px 18px -10px rgba(0,0,0,0.40),0 0 0 3px rgba(59,130,246,0.12)}
.sig-clear-btn{
  position:absolute;
  top:12px;
  right:12px;
  z-index:3;
  padding:5px 11px;
  border-radius:7px;
  background:rgba(255,255,255,0.85);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  border:1px solid rgba(15,23,42,0.12);
  color:#475569;
  font-family:var(--font-body);
  font-size:10px;
  font-weight:600;
  letter-spacing:0.06em;
  text-transform:uppercase;
  cursor:pointer;
  transition:all 0.18s ease;
}
.sig-clear-btn:hover{
  background:var(--accent);
  border-color:var(--accent);
  color:#fff;
  transform:translateY(-1px);
}
.sig-clear-btn:active{transform:translateY(0)}
.pv-2col-wrap{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.pv-2col-wrap>.pv-section{margin-bottom:0}
.sig-container.compact .sig-canvas{height:130px}
/* Linie de bază „✕ ———” pentru semnătură — overlay VIZUAL (pointer-events:none) -> NU intră în export. */
.sig-container::before,.insp-sig-wrap::before{content:'\2715';position:absolute;left:14px;bottom:23px;z-index:2;font:600 11px var(--font-body);line-height:1;color:rgba(37,99,235,0.55);pointer-events:none}
.sig-container::after,.insp-sig-wrap::after{content:'';position:absolute;left:30px;right:16px;bottom:28px;z-index:2;border-top:1.5px dashed rgba(37,99,235,0.28);pointer-events:none}
/* PV mini-nav — floating glass step indicator */
.pv-mini-nav{
  position:sticky;
  top:0;
  z-index:50;
  display:flex;
  align-items:center;
  gap:2px;
  margin-bottom:18px;
  padding:8px;
  background:rgba(10,10,13,0.82);
  backdrop-filter:saturate(160%) blur(18px);
  -webkit-backdrop-filter:saturate(160%) blur(18px);
  border:1px solid var(--border);
  border-radius:14px;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.03) inset,
    0 0 0 1px rgba(59,130,246,0.05),
    0 16px 36px -12px rgba(0,0,0,0.65);
  overflow-x:auto;
  overflow-y:hidden;
  scrollbar-width:none;
  -ms-overflow-style:none;
}
.pv-mini-nav::-webkit-scrollbar{display:none}
.pv-mini-nav button{
  position:relative;
  flex-shrink:0;
  display:inline-flex;
  align-items:baseline;
  gap:8px;
  padding:8px 14px;
  border-radius:9px;
  border:none;
  background:transparent;
  color:var(--text3);
  cursor:pointer;
  font-family:var(--font-body);
  font-size:12px;
  font-weight:500;
  letter-spacing:0.005em;
  white-space:nowrap;
  transition:color 0.2s ease,background 0.2s ease;
}
.pv-mini-nav button::before{
  content:attr(data-step);
  font-family:var(--font-head);
  font-size:9px;
  font-weight:700;
  letter-spacing:0.1em;
  color:var(--text3);
  background:transparent;
  padding:3px 5px 2px;
  border-radius:5px;
  border:1px solid var(--border);
  line-height:1;
  transition:all 0.22s ease;
  position:relative;
  top:-1px;
}
.pv-mini-nav button:nth-of-type(1)::before{content:'01'}
.pv-mini-nav button:nth-of-type(2)::before{content:'02'}
.pv-mini-nav button:nth-of-type(3)::before{content:'03'}
.pv-mini-nav button:nth-of-type(4)::before{content:'04'}
.pv-mini-nav button:nth-of-type(5)::before{content:'05'}
.pv-mini-nav button:nth-of-type(6)::before{content:'06'}
.pv-mini-nav button:hover{color:var(--text);background:rgba(255,255,255,0.04)}
.pv-mini-nav button:hover::before{color:var(--text2);border-color:var(--border2)}
.pv-mini-nav button.active{
  color:var(--accent);
  background:rgba(59,130,246,0.10);
}
.pv-mini-nav button.active::before{
  color:#fff;
  background:var(--accent);
  border-color:var(--accent);
  box-shadow:0 0 14px rgba(59,130,246,0.45);
}
.pv-mini-nav button.active::after{
  content:'';
  position:absolute;
  left:14px;
  right:14px;
  bottom:2px;
  height:2px;
  background:linear-gradient(90deg,transparent 0%,var(--accent) 50%,transparent 100%);
  border-radius:2px;
  animation:pvNavPulse 1.8s ease-in-out infinite;
}
@keyframes pvNavPulse{
  0%,100%{opacity:0.35}
  50%{opacity:1}
}
.pv-mini-nav .pv-nav-sep{
  flex-shrink:0;
  width:1px;
  height:16px;
  background:linear-gradient(180deg,transparent 0%,var(--border2) 50%,transparent 100%);
}
/* Scroll margin pentru secțiunile PV ca să nu cadă sub nav-ul sticky */
[id^="pv-s-"]{scroll-margin-top:80px}
.edit-table{width:100%;border-collapse:collapse;font-size:11px;background:var(--bg2);border-radius:var(--r);overflow:hidden}
.edit-table th{background:var(--bg4);color:var(--text2);padding:7px 8px;font-weight:600;border:1px solid var(--border);text-align:center;font-size:10px;text-transform:uppercase;letter-spacing:0.04em}
.edit-table td{border:1px solid var(--border);padding:4px 6px;vertical-align:middle;color:var(--text)}
.edit-table input{width:100%;padding:4px 6px;text-align:center;border:1px solid var(--border);border-radius:4px;font-size:11px;background:var(--bg3);color:var(--text);font-family:var(--font-body)}
.edit-table input:focus{outline:none;border-color:var(--accent)}

/* TOAST */
.toast{
  position:fixed;bottom:24px;right:24px;
  background:var(--bg3);border:1px solid var(--border2);
  border-radius:10px;padding:14px 18px;font-size:13px;
  display:none;z-index:2000;max-width:320px;
  box-shadow:0 8px 32px rgba(0,0,0,0.4);
  animation:toastIn 0.25s cubic-bezier(0.16,1,0.3,1);
}
@keyframes toastIn{from{opacity:0;transform:translateY(12px) scale(0.96)}to{opacity:1;transform:translateY(0) scale(1)}}
.toast-title{font-weight:600;color:var(--text);margin-bottom:3px;font-size:13px;font-family:var(--font-head);letter-spacing:-0.01em}
.toast-sub{color:var(--text2);font-size:12px;line-height:1.4}
.toast-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);display:inline-block;margin-right:7px}

/* DATE RANGE ERROR */
.date-err{font-size:11px;color:var(--red);margin-top:5px;display:none}

/* PRINT */
#print-area{display:none}
@media print{
  body *{visibility:hidden}
  #print-area,#print-area *{visibility:visible}
  #print-area{display:block;position:absolute;left:0;top:0;width:100%;background:white;color:black;font-family:'Times New Roman',serif;font-size:11pt;line-height:1.3;padding:1.5cm;box-sizing:border-box}
  .print-title{text-align:center;font-weight:bold;font-size:13pt;margin-bottom:15px}
  .print-para{text-indent:1cm;margin-bottom:8px;text-align:justify}
  .print-table{width:100%;border-collapse:collapse;margin:10px 0;font-size:9.5pt}
  .print-table th{background-color:black!important;color:white!important;font-weight:bold;border:1px solid black;padding:4px 6px;text-align:center;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .print-table td{border:1px solid black;padding:4px 6px;text-align:left}
  .td-center{text-align:center!important}
  .print-signatures{display:flex;justify-content:space-between;margin-top:30px;page-break-inside:avoid}
  .print-sig-box{width:45%}
}
select option{background:var(--bg3);color:var(--text)}
/* LOGIN */
.login-overlay{position:fixed;inset:0;z-index:1000;display:flex;background:#06080f}
.login-left{
  flex:1;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;
  padding:64px 72px;position:relative;overflow:hidden;
  background:#06080f;
  background-image:
    radial-gradient(ellipse 70% 60% at 25% 55%,rgba(59,130,246,0.11) 0%,transparent 65%),
    linear-gradient(rgba(59,130,246,0.035) 1px,transparent 1px),
    linear-gradient(to right,rgba(59,130,246,0.035) 1px,transparent 1px);
  background-size:auto,54px 54px,54px 54px;
}
.login-left-logo{display:flex;align-items:center;gap:14px;margin-bottom:56px}
.login-left-logomark{
  width:50px;height:50px;border-radius:14px;flex-shrink:0;
  background:linear-gradient(145deg,#3b82f6,#1d4ed8);
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 0 40px rgba(59,130,246,0.30),0 4px 16px rgba(0,0,0,0.4);
}
.login-left-name{font-family:var(--font-head);font-size:20px;font-weight:700;letter-spacing:-0.02em;color:#e5e5e5}
.login-left-name em{color:var(--accent);font-style:normal}
.login-headline{
  font-family:var(--font-head);font-size:52px;font-weight:800;
  color:#e5e5e5;line-height:1.05;letter-spacing:-0.05em;
  margin-bottom:20px;
}
.login-headline em{color:var(--accent);font-style:normal}
.login-tagline{font-size:15px;color:rgba(255,255,255,0.35);line-height:1.65;max-width:380px;font-weight:400}
.login-left-badge{
  margin-top:52px;display:inline-flex;align-items:center;gap:10px;
  background:rgba(59,130,246,0.07);border:1px solid rgba(59,130,246,0.14);
  border-radius:8px;padding:10px 16px;
}
.login-left-badge-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);flex-shrink:0;animation:pulse-dot 2.2s ease infinite}
.login-left-badge span{font-size:12px;color:rgba(255,255,255,0.42);font-weight:500;letter-spacing:0.01em}
.login-left-deco-ring{
  position:absolute;bottom:-100px;right:-100px;
  width:400px;height:400px;border-radius:50%;pointer-events:none;
  border:1px solid rgba(59,130,246,0.07);
  box-shadow:0 0 0 80px rgba(59,130,246,0.03),0 0 0 160px rgba(59,130,246,0.015);
}
.login-right{
  width:440px;flex-shrink:0;display:flex;align-items:center;justify-content:center;
  padding:56px 48px;background:#0d1117;border-left:1px solid rgba(255,255,255,0.05);
}
.login-right-inner{width:100%}
.login-form-heading{font-family:var(--font-head);font-size:28px;font-weight:700;color:#e5e5e5;letter-spacing:-0.03em;margin-bottom:6px}
.login-form-sub{font-size:13px;color:rgba(255,255,255,0.35);margin-bottom:36px;line-height:1.5}
.login-err{font-size:12px;color:var(--red);margin-top:10px;display:none;text-align:center;background:var(--red-dim);padding:8px 12px;border-radius:var(--r)}
.login-spinner{display:none;width:14px;height:14px;border:2px solid rgba(255,255,255,0.25);border-top-color:#fff;border-radius:50%;animation:spin 0.7s linear infinite;flex-shrink:0}
@media(max-width:760px){.login-left{display:none}.login-right{width:100%;border-left:none;padding:48px 32px}}
@keyframes pulse-dot{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.5;transform:scale(0.85)}}
@keyframes spin{to{transform:rotate(360deg)}}
.modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.65);z-index:1000;align-items:center;justify-content:center;backdrop-filter:blur(2px)}
.modal-overlay.open{display:flex}
.modal-box{background:var(--bg2);border:1px solid var(--border);border-radius:12px;padding:28px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,0.5)}
.modal-title{font-family:var(--font-head);font-size:16px;font-weight:700;margin-bottom:20px;color:var(--text);letter-spacing:-0.03em}
.modal-footer{display:flex;gap:10px;justify-content:flex-end;margin-top:24px;padding-top:16px;border-top:1px solid var(--border)}
.admin-table{width:100%;border-collapse:collapse;font-size:13px}
.admin-table th{text-align:left;padding:12px 16px;color:var(--text3);font-weight:700;border-bottom:1px solid var(--border);font-size:10px;text-transform:uppercase;letter-spacing:0.08em;background:var(--bg3)}
.admin-table td{padding:12px 16px;border-bottom:1px solid var(--border);color:var(--text)}
.admin-table tr:last-child td{border-bottom:none}
.admin-table tbody tr{transition:background 0.12s}
.admin-table tbody tr:hover td{background:var(--bg3)}
.notif-bell{position:relative;cursor:pointer;background:none;border:none;color:var(--text2);display:flex;align-items:center;padding:6px}
.notif-dot{position:absolute;top:4px;right:4px;width:8px;height:8px;border-radius:50%;background:var(--red);display:none}

.modal-box{animation:modalIn 0.22s cubic-bezier(0.16,1,0.3,1) both}
@keyframes modalIn{from{opacity:0;transform:translateY(10px) scale(0.98)}to{opacity:1;transform:translateY(0) scale(1)}}

.detail-card{position:relative;overflow:hidden}
.car-card{position:relative;overflow:visible;border-radius:12px}

/* SKELETON LOADERS */
@keyframes shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
.skeleton{background:linear-gradient(90deg,var(--bg3) 25%,var(--bg4) 50%,var(--bg3) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:6px}
.skeleton-row{display:flex;align-items:center;gap:14px;padding:14px 18px;border:1px solid var(--border);border-radius:var(--r2);margin-bottom:8px}
.skeleton-badge{width:80px;height:22px}
.skeleton-line{height:12px;border-radius:4px}
.skeleton-line-sm{height:10px;border-radius:4px}

/* AVATAR COLORAT */
.user-avatar:hover{transform:none}

.prio-urgent{display:inline-block;padding:1px 7px;border-radius:4px;font-size:10px;font-weight:700;background:var(--red-dim);color:var(--red);letter-spacing:0.04em;vertical-align:middle;margin-left:4px}
.prio-scazut{display:inline-block;padding:1px 7px;border-radius:4px;font-size:10px;font-weight:700;background:var(--blue-dim);color:var(--blue);letter-spacing:0.04em;vertical-align:middle;margin-left:4px}
.car-action-btn{padding:4px 12px;border-radius:6px;font-size:11px;cursor:pointer;font-family:var(--font-body);border:1px solid;transition:opacity 0.15s}
.car-action-btn:hover{opacity:0.8}
/* CHARTS */
.charts-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px;margin-bottom:28px}
.chart-card{background:var(--bg2);border:1px solid var(--border);border-radius:12px;padding:24px;min-width:0}
.chart-title{font-family:var(--font-head);font-size:13px;font-weight:600;color:var(--text);letter-spacing:-0.02em;margin-bottom:18px}
.chart-wrap{position:relative;height:170px;min-width:0;overflow:hidden}
.chart-wrap-tall{height:200px}
.chart-header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}
.chart-header-row .chart-title{margin-bottom:0;padding-top:4px}
.chart-headline{text-align:right;line-height:1;min-width:0}
.chart-headline-val{font-family:var(--font-head);font-size:28px;font-weight:700;color:var(--text);letter-spacing:-0.05em;line-height:1}
.chart-headline-label{font-size:10px;color:var(--text3);margin-top:4px;letter-spacing:0.06em;text-transform:uppercase;font-weight:500}
.chart-legend-dots{display:flex;align-items:center;gap:14px;margin-top:10px;flex-wrap:wrap}
.chart-legend-dot{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--text2)}
.chart-legend-dot::before{content:'';width:8px;height:8px;border-radius:50%;background:currentColor;flex-shrink:0}
/* PAGINATION */
.pagination{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:20px;padding-top:18px;border-top:1px solid var(--border)}
.page-btn{padding:6px 14px;border-radius:8px;border:1px solid var(--border);background:var(--bg2);color:var(--text2);font-size:12px;cursor:pointer;font-family:var(--font-body);transition:all 0.15s;font-weight:500}
.page-btn:hover:not(:disabled){background:var(--bg3);color:var(--text);border-color:var(--border2)}
.page-btn:disabled{opacity:0.3;cursor:default}
.page-info{font-size:12px;color:var(--text3);min-width:90px;text-align:center;font-weight:500}
/* LOADING BUTTON */
.btn-loading{position:relative;pointer-events:none;opacity:0.7}
.btn-spinner{display:inline-block;width:12px;height:12px;border:2px solid rgba(255,255,255,0.3);border-top-color:#fff;border-radius:50%;animation:spin 0.6s linear infinite;margin-right:6px;vertical-align:middle}
/* CONFIRM MODAL */
.confirm-overlay{position:fixed;inset:0;z-index:500;background:rgba(0,0,0,0.5);display:none;align-items:center;justify-content:center}
.confirm-overlay.open{display:flex}
.confirm-box{background:var(--bg2);border:1px solid var(--border);border-radius:var(--r2);padding:24px;width:340px;animation:modalIn 0.2s ease both;box-shadow:var(--shadow-md)}
.confirm-title{font-size:15px;font-weight:600;margin-bottom:8px;color:var(--text)}
.confirm-msg{font-size:13px;color:var(--text2);margin-bottom:20px;line-height:1.5}
/* TOKEN WARNING */
.token-warning{position:fixed;top:16px;left:50%;transform:translateX(-50%);background:var(--amber-dim);border:1px solid var(--amber);border-radius:var(--r);padding:10px 20px;font-size:13px;color:var(--amber);z-index:999;display:none;animation:fadeUp 0.3s ease}
/* NOTIF PANEL */
.notif-item{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border);cursor:pointer;transition:background 0.12s}
.notif-item:last-child{border-bottom:none}
.notif-item:hover{background:var(--bg3)}
.notif-item.unread{background:var(--accent-dim2)}
.notif-item.unread:hover{background:var(--accent-dim)}
.notif-icon{width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:7px}
.notif-body{flex:1;min-width:0}
.notif-title{font-size:12px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.notif-sub{font-size:11px;color:var(--text2);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.notif-time{font-size:10px;color:var(--text3);margin-top:3px}
.notif-empty{padding:32px 16px;text-align:center;font-size:12px;color:var(--text3)}
/* THEME TOGGLE */
.theme-toggle{background:none;border:1px solid var(--border);border-radius:var(--r);padding:6px 8px;cursor:pointer;color:var(--text2);display:flex;align-items:center;transition:all 0.15s}
.theme-toggle:hover{background:var(--bg3);color:var(--text);border-color:var(--border2)}
/* LIGHT MODE */
body.light{
  /* Tema deschisă rafinată — ton rece (blue-gray) ca să se lege de accentul albastru,
     suprafețe albe cu elevație clară (carduri care „ies” din fundal) + umbre reci cu adâncime. */
  --bg:#eaedf4;
  --bg2:#ffffff;
  --bg3:#f1f4f9;
  --bg4:#e4e9f2;
  --bg5:#d3dae8;
  --surface:#ffffff;
  --surface2:#f4f6fb;
  --accent:#2563eb;
  --accent2:#1d4ed8;
  --accent-dim:rgba(37,99,235,0.10);
  --accent-dim2:rgba(37,99,235,0.045);
  --red:#dc2626;
  --red-dim:rgba(220,38,38,0.08);
  --amber:#d97706;
  --amber-dim:rgba(217,119,6,0.09);
  --blue:#2563eb;
  --blue-dim:rgba(37,99,235,0.08);
  --purple:#7c3aed;
  --purple-dim:rgba(124,58,237,0.08);
  --green:#059669;
  --green-dim:rgba(5,150,105,0.09);
  --text:#161a23;
  --text2:#586074;
  --text3:#949cae;
  --border:#e1e6f0;
  --border2:#ccd4e3;
  --shadow:0 1px 2px rgba(28,39,74,0.06),0 2px 6px rgba(28,39,74,0.05);
  --shadow-md:0 10px 28px -8px rgba(28,39,74,0.14),0 3px 8px rgba(28,39,74,0.06);
}
body.light .btn-accent{color:#fff}
body.light .btn-accent:hover{color:#fff}
body.light select option{background:#fff;color:#111}
body.light .login-overlay{background:#06080f}
body.light .skeleton{background:linear-gradient(90deg,#e8e8e8 25%,#f0f0f0 50%,#e8e8e8 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}
body.light .ticket-list{background:var(--border)}
/* Tema deschisă: componente care erau „hardcodate” dark și nu se potriveau pe fundal deschis */
body.light .pv-mini-nav{background:rgba(255,255,255,0.80);box-shadow:0 1px 0 rgba(255,255,255,0.7) inset,0 0 0 1px rgba(37,99,235,0.06),0 16px 34px -14px rgba(28,39,74,0.20)}
body.light .insp-section{background:linear-gradient(180deg,#ffffff,#f6f8fc)}
body.light .insp-diag-card{background:linear-gradient(180deg,#ffffff,#f4f6fb)}
/* Schema caroserie rămâne un „ecran” dark inset în cardul alb -> păstrez label-urile vizibile pe el */
body.light .insp-car-svg text{fill:#aab2c4}
body.light .insp-car-svg text.label-mini{fill:#7e869a}

/* ============================================================ */
/* === INSPECTIE VIZUALA VEHICUL                          === */
/* ============================================================ */
.insp-layout{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,3fr);gap:24px;align-items:start}
.insp-form-side{min-width:0;display:flex;flex-direction:column;gap:18px;padding-bottom:40vh}
.insp-diag-side{min-width:0;position:sticky;top:12px;align-self:start}
@media (max-width:900px){
  .insp-layout{grid-template-columns:1fr}
  .insp-diag-side{position:static;order:-1}
}
.insp-mininav{position:sticky;top:0;z-index:5;background:rgba(22,22,27,0.78);backdrop-filter:blur(14px);border:1px solid var(--border2);border-radius:999px;padding:5px;display:inline-flex;gap:2px;margin-bottom:6px;flex-wrap:wrap}
.insp-mininav a{padding:8px 14px;border-radius:999px;color:var(--text2);text-decoration:none;font-size:13px;display:inline-flex;align-items:center;gap:6px;transition:all 0.2s}
.insp-mininav a .num{font-family:'Syne',sans-serif;font-weight:600;font-size:10px;color:var(--text3);padding:2px 6px;border-radius:4px;background:rgba(255,255,255,0.04)}
.insp-mininav a:hover{color:var(--text);background:var(--bg3)}
.insp-mininav a.active{background:var(--accent);color:#fff}
.insp-mininav a.active .num{background:rgba(255,255,255,0.18);color:#fff}
.insp-section{background:linear-gradient(180deg,rgba(29,29,36,0.6),rgba(22,22,27,0.6));border:1px solid var(--border);border-radius:var(--r);padding:20px 22px;scroll-margin-top:80px}
.insp-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px;padding-bottom:12px;border-bottom:1px dashed var(--border2)}
.insp-sec-left{display:flex;gap:14px;align-items:center}
.insp-sec-num{width:34px;height:34px;display:grid;place-items:center;background:var(--bg3);border:1px solid var(--border2);border-radius:8px;font-family:'Syne',sans-serif;font-weight:700;color:var(--accent);font-size:13px}
.insp-sec-title{font-family:'Syne',sans-serif;font-weight:600;font-size:17px;margin:0;color:var(--text)}
.insp-sec-desc{color:var(--text2);font-size:12px;margin:3px 0 0}
.insp-sec-tag{font-size:10px;letter-spacing:0.12em;color:var(--text3);text-transform:uppercase}
.insp-grid{display:grid;gap:14px;grid-template-columns:repeat(12,1fr)}
.insp-col-3{grid-column:span 3}
.insp-col-4{grid-column:span 4}
.insp-col-6{grid-column:span 6}
.insp-col-12{grid-column:span 12}
@media (max-width:700px){.insp-col-3,.insp-col-4,.insp-col-6{grid-column:span 12}}
.insp-field{display:flex;flex-direction:column;gap:6px}
.insp-label{font-size:10px;text-transform:uppercase;letter-spacing:0.12em;color:var(--text3);font-weight:500}
.insp-label .req{color:var(--accent);margin-left:3px}
.insp-input,.insp-select,.insp-textarea{background:var(--bg2);border:1px solid var(--border2);border-radius:var(--r);padding:11px 13px;color:var(--text);font-family:'DM Sans',sans-serif;font-size:13px;transition:all 0.18s;width:100%}
.insp-input:focus,.insp-select:focus,.insp-textarea:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim);background:var(--bg3)}
.insp-textarea{resize:vertical;min-height:90px;font-family:inherit}
.insp-sig-wrap{position:relative}
.insp-sig-box{width:100%;height:170px;background:linear-gradient(180deg,#f7f9fc 0%,#e9eef5 100%);border:1px solid rgba(15,23,42,0.12);border-radius:10px;cursor:crosshair;display:block;box-shadow:0 1px 0 rgba(255,255,255,0.7) inset,0 6px 18px -10px rgba(0,0,0,0.40);transition:border-color 0.18s ease,box-shadow 0.18s ease}
.insp-sig-box:hover{border-color:rgba(59,130,246,0.45);box-shadow:0 1px 0 rgba(255,255,255,0.7) inset,0 6px 18px -10px rgba(0,0,0,0.40),0 0 0 3px rgba(59,130,246,0.12)}
.insp-sig-clear{position:absolute;top:10px;right:10px;z-index:3;background:rgba(255,255,255,0.85);backdrop-filter:blur(8px);color:#475569;border:1px solid rgba(15,23,42,0.12);border-radius:7px;padding:4px 10px;font-size:11px;font-weight:600;cursor:pointer;transition:all 0.15s}
.insp-sig-clear:hover{background:var(--accent);border-color:var(--accent);color:#fff;transform:translateY(-1px)}
.insp-sig-meta{position:absolute;bottom:8px;right:12px;font-family:'Syne',sans-serif;font-weight:600;font-size:10px;letter-spacing:0.12em;color:rgba(37,99,235,0.55);pointer-events:none;text-transform:uppercase}
.insp-diag-card{background:linear-gradient(180deg,rgba(29,29,36,0.7),rgba(22,22,27,0.7));border:1px solid var(--border2);border-radius:var(--r);padding:18px}
.insp-diag-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.insp-diag-title{font-family:'Syne',sans-serif;font-weight:600;font-size:14px;margin:0;color:var(--text)}
.insp-diag-sub{font-size:10px;color:var(--text3);text-transform:uppercase;letter-spacing:0.1em}
.insp-diag-stage{background:#0a0a0d;border:1px solid var(--border);border-radius:var(--r);padding:12px 8px 8px;display:flex;justify-content:center}
.insp-car-svg{width:100%;max-width:240px;height:auto}
.insp-car-svg text{font-family:'DM Sans',sans-serif;font-size:8px;font-weight:600;fill:var(--text2);text-transform:uppercase;letter-spacing:0.05em;pointer-events:none;text-anchor:middle;dominant-baseline:middle}
.insp-car-svg text.label-2line{font-size:7px;dominant-baseline:alphabetic;letter-spacing:0.03em}
.insp-car-svg text.label-mini{font-size:5.5px;letter-spacing:0.04em;fill:var(--text3)}
.insp-car-svg .car-silhouette{fill:none;stroke:rgba(255,255,255,0.06);stroke-width:1;pointer-events:none}
.insp-car-svg .car-axis{stroke:rgba(255,255,255,0.10);stroke-width:0.6;stroke-dasharray:2 3;fill:none;pointer-events:none}
.insp-car-svg .car-glass{fill:rgba(59,130,246,0.06);stroke:rgba(255,255,255,0.08);stroke-width:0.6;pointer-events:none}
.insp-car-svg .car-part.mirror{stroke-width:1}
.car-part{fill:#2a2a32;stroke:rgba(255,255,255,0.10);stroke-width:1.2;cursor:pointer;transition:fill 0.2s,stroke 0.2s,filter 0.2s}
.car-part:hover{stroke:var(--accent);stroke-width:1.6;filter:drop-shadow(0 0 6px rgba(59,130,246,0.45))}
.car-part.ok{fill:rgba(16,185,129,0.55);stroke:rgba(16,185,129,0.85)}
.car-part.zgariat{fill:rgba(245,158,11,0.7);stroke:rgba(245,158,11,0.95)}
.car-part.lovit{fill:rgba(239,68,68,0.78);stroke:rgba(239,68,68,1)}
.insp-legend{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;margin-top:14px;padding:10px 12px;background:var(--bg2);border:1px solid var(--border);border-radius:var(--r);font-size:11px;color:var(--text2)}
.insp-legend-item{display:flex;align-items:center;gap:8px}
.insp-legend-swatch{width:12px;height:12px;border-radius:3px;border:1px solid rgba(255,255,255,0.15);flex-shrink:0}
.insp-legend-swatch.default{background:#2a2a32}
.insp-legend-swatch.ok{background:rgba(16,185,129,0.55)}
.insp-legend-swatch.zgariat{background:rgba(245,158,11,0.7)}
.insp-legend-swatch.lovit{background:rgba(239,68,68,0.78)}
.insp-counter{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:6px;margin-top:12px}
.insp-counter-cell{background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:8px 6px;text-align:center}
.insp-counter-cell .n{font-family:'Syne',sans-serif;font-weight:700;font-size:18px;color:var(--text);display:block}
.insp-counter-cell .k{font-size:9px;color:var(--text3);text-transform:uppercase;letter-spacing:0.08em;margin-top:2px}
.insp-counter-cell.ok .n{color:var(--green)}
.insp-counter-cell.zgariat .n{color:var(--amber)}
.insp-counter-cell.lovit .n{color:var(--red)}
.insp-counter-total{margin-top:10px;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,rgba(59,130,246,0.10),rgba(59,130,246,0.02));border:1px solid rgba(59,130,246,0.22);border-radius:var(--r);padding:10px 14px;font-size:12px;color:var(--text2)}
.insp-counter-total b{color:var(--accent);font-family:'Syne',sans-serif;font-weight:700;font-size:14px;margin-right:4px}
.insp-counter-total .reset-btn{background:transparent;border:1px solid var(--border2);color:var(--text2);padding:4px 10px;border-radius:6px;font-size:11px;cursor:pointer;transition:all 0.15s}
.insp-counter-total .reset-btn:hover{border-color:var(--red);color:var(--red)}

/* === MODAL PIESĂ INSPECȚIE === */
.modal-box-md{max-width:520px;width:92%}
.insp-state-buttons{display:flex;gap:8px;margin-top:4px}
.insp-state-btn{flex:1;padding:11px 14px;border-radius:8px;border:1px solid var(--border2);background:var(--bg2);color:var(--text2);cursor:pointer;font-size:13px;font-weight:600;transition:all 0.15s}
.insp-state-btn:hover{border-color:var(--accent);color:var(--text)}
.insp-state-btn.active[data-state="ok"]{background:rgba(16,185,129,0.18);border-color:var(--green);color:var(--green)}
.insp-state-btn.active[data-state="zgariat"]{background:rgba(245,158,11,0.18);border-color:var(--amber);color:var(--amber)}
.insp-state-btn.active[data-state="lovit"]{background:rgba(239,68,68,0.18);border-color:var(--red);color:var(--red)}
.insp-state-btn-clear{flex:0 0 auto;padding:11px 12px;font-weight:500;color:var(--text3)}
.insp-state-btn-clear:hover{color:var(--text)}
.insp-state-btn-clear.active{background:var(--bg3);border-color:var(--border2);color:var(--text2)}
.insp-car-svg .part-badge{fill:var(--accent);stroke:#0a0a0d;stroke-width:1;pointer-events:none;filter:drop-shadow(0 0 4px rgba(59,130,246,0.6))}

/* === Fix M-5 audit 27.05.2026: utility classes pentru migrare inline styles ===
 * Stiluri extrase automat din HTML/JS pentru a permite CSP strict (eliminare unsafe-inline pe style).
 * Generate prin migrate_inline_styles.py; NU edita manual — regenerate la nevoie.
 */
.s-002535c2{margin-top:12px}
.s-012b4d39{display:flex;justify-content:flex-end;margin-top:8px}
.s-08db7be4{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.s-0a2d0d6a{text-align:center;padding:60px 20px;color:var(--text3)}
.s-0b8a2164{margin-bottom:12px;opacity:0.4}
.s-0ef5c4e9{display:flex;align-items:center;gap:6px;margin-top:3px;flex-wrap:wrap}
.s-12db6719{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.s-1396ef18{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.06em;color:var(--text3);margin-bottom:6px;margin-top:14px}
.s-14113d4b{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.s-144853af{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--bg2);color:var(--text);border:1px solid var(--border2);border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;font-family:inherit}
.s-14f3ecc9{font-size:11px;color:var(--text3)}
.s-155acc4f{display:flex;gap:10px;margin-top:4px}
.s-15db5dc7{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;background:rgba(245,158,11,0.10);color:#f59e0b;border-radius:6px;font-size:12px;font-weight:600}
.s-1d6e3fb2{display:flex;justify-content:flex-end;margin-top:16px}
.s-2019ca23{font-size:14px;margin-bottom:8px}
.s-20dcef94{padding:0;overflow:hidden}
.s-21752a43{border-color:var(--border);margin:16px 0}
.s-29846ef3{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;background:rgba(34,197,94,0.10);color:#22c55e;border-radius:6px;font-size:12px;font-weight:600}
.s-29fb9df2{color:#10b981}
.s-2a4cda41{color:#f59e0b}
.s-2c0aea92{font-size:11px;padding:5px 8px;height:28px}
.s-2c8090ae{font-size:11px;font-weight:600;color:var(--text2)}
.s-2d58a12e{font-size:13px;margin-top:6px}
.s-2db1d01d{font-size:11px;color:var(--text3);margin-top:8px}
.s-3042e19f{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.s-31fa5008{font-size:13px;font-weight:600;color:var(--text)}
.s-35e6307a{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.s-35efd579{width:100%;justify-content:center;gap:10px;margin-top:24px;height:44px;font-size:14px;font-weight:600}
.s-3e709519{font-weight:bold;margin-top:15px;margin-bottom:5px}
.s-3f36b36d{min-height:90px}
.s-40d88284{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}
.s-438e5c99{display:none;margin-left:auto}
.s-44df1d83{color:var(--text2);font-size:11px}
.s-470dfa3f{font-family:var(--font-head);color:var(--accent)}
.s-4772bbaa{flex:1;display:flex;flex-direction:column;gap:8px}
.s-494cebcd{height:60px;max-width:250px;display:none;margin-top:5px}
.s-4aca96a5{font-size:12px;color:var(--text3);text-align:center}
.s-50ac33a5{padding:4px 10px;border-radius:6px;background:var(--accent-dim);border:1px solid var(--accent);color:var(--accent);font-size:11px;cursor:pointer;font-family:var(--font-body)}
.s-518cc756{width:60%}
.s-5194c086{color:var(--text3)}
.s-519f6e49{background:none;border:none;color:var(--accent);cursor:pointer;font-size:12px;padding:0;font-family:var(--font-body)}
.s-51d488e4{width:40%}
.s-553a645f{margin-top:14px}
.s-58730fe0{text-align:center;color:var(--text3);padding:30px}
.s-6179637e{margin-bottom:14px}
.s-684bd8e2{text-align:center;padding:20px;color:var(--text3);font-size:12px}
.s-6aba78e6{font-size:12px;margin-bottom:8px}
.s-6b9c179a{font-size:12px}
.s-6ca92283{padding:4px 10px;border-radius:5px;background:var(--red-dim);border:none;color:var(--red);font-size:11px;cursor:pointer;font-family:var(--font-body)}
.s-6f74250a{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border)}
.s-70a7e59e{font-size:10pt;padding-left:20px;text-align:justify;margin-bottom:20px;line-height:1.2}
.s-715c2851{margin-top:6px;width:100%;padding:4px 8px;border-radius:6px;background:var(--accent-dim);border:none;color:var(--accent);font-size:10px;font-family:var(--font-body);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px}
.s-72bedfb8{color:var(--text2);white-space:nowrap}
.s-7cb68f7a{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px}
.s-7e29ba54{font-size:11px;color:var(--text3);margin-top:4px}
.s-7faa154f{color:var(--text2)}
.s-83560444{text-align:center;padding:40px;color:var(--text3);font-size:13px;background:var(--bg3);border-radius:var(--r);margin-top:16px}
.s-871a87af{display:flex;gap:10px}
.s-891d2645{accent-color:var(--accent)}
.s-89a8fff9{border-top:1px solid var(--border);padding-top:14px;margin-top:4px}
.s-8c505ed2{width:70px;height:22px}
.s-8db2fe01{color:var(--amber);font-size:11px;font-weight:500}
.s-8efdf27a{margin-top:10px;text-indent:0}
.s-91294d29{display:flex;gap:6px}
.s-92e76c14{font-family:var(--font-head);font-size:18px;font-weight:700;color:var(--accent);margin-top:4px}
.s-94d2bf55{width:7px;height:7px;border-radius:50%;background:var(--accent);flex-shrink:0;margin-top:4px}
.s-967a1e0e{display:flex;align-items:center;gap:8px;cursor:pointer;padding:10px 16px;border:1px solid var(--border2);border-radius:var(--r);flex:1;transition:all 0.15s}
.s-998b7464{display:grid}
.s-9b871284{padding:6px 12px;border-radius:6px;background:var(--accent-dim);border:1px solid var(--accent);color:var(--accent);font-size:11px;cursor:pointer;font-family:var(--font-body)}
.s-9ba6bb9d{resize:vertical;min-height:60px;font-family:inherit}
.s-9f0e4db8{display:flex;align-items:center;gap:12px}
.s-a6ebe6a6{margin-top:4px;width:100%;padding:4px 8px;border-radius:6px;background:var(--red-dim);border:none;color:var(--red);font-size:10px;font-family:var(--font-body);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px}
.s-a74d27d5{grid-column:span 2}
.s-a8eec12f{color:var(--text3);font-size:11px}
.s-abc7f5a9{background:var(--accent)}
.s-b171289b{color:#3b82f6}
.s-b202c6d4{cursor:pointer}
.s-b2926ff4{margin-bottom:20px;justify-content:flex-end;flex-wrap:wrap;row-gap:10px}
.s-b2ad68d1{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;flex-wrap:wrap;gap:8px}
.s-b2d4938f{margin-bottom:10px;padding-left:20px}
.s-bb2b0e55{color:var(--accent)}
.s-bf1022d7{font-size:11px;color:var(--accent);background:none;border:none;cursor:pointer;font-family:var(--font-body)}
.s-c1552d27{color:var(--amber);text-decoration:underline}
.s-c1a6b7e7{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.06em;color:var(--accent);margin-bottom:10px}
.s-c451fdb0{position:relative}
.s-c9e34862{color:#ef4444}
.s-cb458930{display:none}
.s-cdba9ba1{color:var(--border2)}
.s-d012df1a{display:flex;gap:10px;justify-content:flex-end}
.s-d2138fcc{text-align:center;color:var(--red);padding:30px}
.s-dc67c1f5{color:var(--text3);white-space:nowrap;font-size:11px}
.s-dc792b27{font-size:12px;color:var(--red);margin-top:8px;display:none}
.s-e09bd948{color:var(--text3);font-weight:400;font-size:11px}
.s-e0e9ec07{display:flex;gap:8px;flex-wrap:wrap}
.s-e241d313{margin-bottom:10px;opacity:0.4}
.s-e5cd1aa9{font-size:13px;font-weight:500;color:var(--text)}
.s-e7ec5403{margin-bottom:0}
.s-e9182c3a{background:var(--red-dim);border-color:var(--red);color:var(--red)}
.s-ed788808{text-align:center;padding:40px 12px;color:var(--text3)}
.s-edffc32f{display:none;white-space:nowrap}
.s-ef9e7709{color:var(--text3);font-size:12px}
.s-f00975c2{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
.s-f0b3b828{font-size:11px;color:var(--text3);margin-top:6px}
.s-f2117d44{font-family:var(--font-head);font-size:18px;font-weight:700;color:var(--text);margin-top:4px}
.s-f3b8801b{display:none;position:absolute;top:calc(100% + 8px);right:0;width:320px;background:var(--bg2);border:1px solid var(--border);border-radius:var(--r2);box-shadow:var(--shadow-md);z-index:300;overflow:hidden}
.s-f3e77e6e{color:var(--text3);font-size:11px;white-space:nowrap}
.s-f8fb69a0{max-height:320px;overflow-y:auto}
.s-faaa794c{display:flex;gap:8px;align-items:center}
.s-fafaab09{padding:4px 10px;border-radius:5px;background:var(--accent-dim);border:none;color:var(--accent);font-size:11px;cursor:pointer;font-family:var(--font-body)}
.s-fb4d8202{display:flex;align-items:center;justify-content:space-between}
.s-fd2fa2ef{color:var(--text3);font-size:10px}

/* === Fix M-5: clase pentru stiluri dinamice (anterior cu ${...} interpolation) === */
.role-badge{padding:2px 8px;border-radius:4px;font-size:11px}
.role-badge--admin{background:var(--accent-dim);color:var(--accent)}
.role-badge--user{background:var(--bg4);color:var(--text2)}
.tl-dot-inner--amber{background:var(--amber)}
.tl-dot-inner--blue{background:var(--blue)}
.tl-dot-inner--accent{background:var(--accent)}
.notif-icon--dauna{background:var(--red)}
.notif-icon--combustibil{background:var(--amber)}
.notif-icon--anvelope{background:var(--accent)}
.notif-icon--cheie{background:var(--purple)}
.notif-icon--utilizator{background:var(--blue)}
.notif-icon--auto{background:#ec4899}
.notif-icon--rezervare{background:#ec4899}
.notif-icon--tehnic{background:var(--green)}
.notif-icon--inspectie{background:#14b8a6}
.notif-icon--default{background:#64748b}
.scope-checklist{display:flex;flex-direction:column;gap:10px;max-height:240px;overflow-y:auto;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--bg3)}
.scope-empty{font-size:12px;color:var(--text3);padding:6px}
.scope-group{display:flex;flex-direction:column;gap:6px}
.scope-regiune-item{display:flex;align-items:center;gap:8px;font-weight:600;font-size:13px;color:var(--text);cursor:pointer}
.scope-centre-wrap{display:flex;flex-direction:column;gap:5px;padding-left:22px}
.scope-centru-item{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text2);cursor:pointer}
.scope-checklist input[type=checkbox]{accent-color:var(--accent);cursor:pointer;width:15px;height:15px;flex-shrink:0}
.scope-centru-item input:disabled{cursor:not-allowed}
.scope-centru-item input:disabled+span{opacity:0.5}
