/* ==========================================================================
   Posturi.gov — Employer Dashboard (aliniat cu identitatea vizuală a site-ului:
   carduri albe pe fundal soft, accent #0a66c2, pill CTA-uri)
   Scope: .pgd
   ========================================================================== */

/* ===== Root ===== */
.pgd{
  --pg-bg: #ffffff;
  --pg-card: #ffffff;
  --pg-card2: #ffffff;
  --pg-border: rgba(15, 23, 42, .10);
  --pg-border2: rgba(15, 23, 42, .16);

  --pg-text: #0f172a;
  --pg-muted: rgba(15, 23, 42, .66);
  --pg-muted2: rgba(15, 23, 42, .50);

  --pg-primary: #0a66c2;
  --pg-primary-2: #084e96;
  --pg-success: #16a34a;
  --pg-warn: #f59e0b;
  --pg-danger: #ef4444;

  --pg-radius: 14px;
  --pg-radius2: 18px;
  --pg-pad: 18px;
  --pg-pad-lg: 24px;

  --pg-shadow: 0 12px 32px rgba(2, 6, 23, .07);
  --pg-shadow2: 0 6px 18px rgba(2, 6, 23, .05);

  --pg-ring: 0 0 0 4px rgba(10, 102, 194, .15);

  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
  color: var(--pg-text);
  background: var(--pg-bg);
  padding: 24px 0 50px;

  /* IMPORTANT: nu lăsa tema să aplice blur pe wrapper */
  isolation: isolate;
}

.pgd, .pgd *{ box-sizing: border-box; }
.pgd a{ color: inherit; }

/* ===== HARD reset doar în dashboard (oprește blur/glass venite din temă) ===== */
.pgd,
.pgd *{
  opacity: 1 !important;
  filter: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  text-shadow: none !important;
}

/* ===== Layout ===== */
.pgd .pgd-wrap{
  max-width: 1300px;
  margin: 0 auto 60px;
  padding: 0 18px;
  position: relative;
  z-index: 1;
}

.pgd .pgd-wrap:before,
.pgd .pgd-wrap:after{
  content: none !important;
  display: none !important;
}

/* ==========================================================================
   Typography
   ========================================================================== */
.pgd .pgd-h1{
  font-size: 26px;
  line-height: 1.12;
  margin: 0;
  letter-spacing: -0.02em;
  color: var(--pg-text);
  font-weight: 800;
}
.pgd .pgd-h2{
  font-size: 18px;
  margin: 0;
  letter-spacing: -0.01em;
  color: var(--pg-text);
  font-weight: 800;
}
.pgd .pgd-muted{ color: var(--pg-muted); }
.pgd .pgd-small{ font-size: 12.5px; color: var(--pg-muted2); }
.pgd .pgd-strong{ font-weight: 800; }

/* ==========================================================================
   Cards
   ========================================================================== */
.pgd .pgd-card{
  background: var(--pg-card) !important;
  border: 1px solid var(--pg-border);
  border-radius: var(--pg-radius2);
  box-shadow: var(--pg-shadow2);
  overflow: hidden;
  margin: 0 0 18px;
}
.pgd .pgd-card-inner{
  padding: var(--pg-pad-lg);
  background: transparent !important;
}

.pgd .pgd-card-header{
  box-shadow: var(--pg-shadow);
  border-color: rgba(10,102,194,.18);
  background: #fff !important;
}

/* Row helpers */
.pgd .pgd-row{ display:flex; gap:14px; align-items:center; }
.pgd .pgd-row-between{ justify-content: space-between; }
.pgd .pgd-actions{ display:flex; gap:10px; flex-wrap:wrap; align-items:center; }
.pgd .pgd-actions-tight{ gap: 8px; }

/* ==========================================================================
   Header block
   ========================================================================== */
.pgd .pgd-header{
  display:flex;
  gap:16px;
  align-items:center;
  justify-content:space-between;
  flex-wrap: wrap;
}

.pgd .pgd-header-left{
  display:flex;
  gap:14px;
  align-items:center;
  min-width: 280px;
  flex: 1;
}

.pgd .pgd-header-right{
  display:flex;
  gap:10px;
  align-items:center;
}

.pgd .pgd-kicker{
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .10em;
  text-transform: uppercase;
  color: var(--pg-primary);
}

.pgd .pgd-title-row{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap: wrap;
}

.pgd .pgd-subtitle{
  margin-top: 6px;
  color: var(--pg-muted);
  font-size: 14px;
}

/* Logo-badge cu inițiale, ca pe pagina de job */
.pgd .pgd-avatar{
  width: 48px;
  height: 48px;
  border-radius: 12px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight: 800;
  font-size: 16px;
  letter-spacing: .02em;
  color: #fff;
  background: linear-gradient(180deg, var(--pg-primary), var(--pg-primary-2));
  border: 1px solid rgba(10,102,194,.30);
  box-shadow: 0 6px 16px rgba(10,102,194,.25);
}

/* ==========================================================================
   Tabs (pills)
   ========================================================================== */
.pgd .pgd-tabs{
  display:flex;
  gap:8px;
  flex-wrap: wrap;
  margin-top: 18px;
  padding: 8px;
  border-radius: 16px;
  border: 1px solid var(--pg-border);
  background: #f8fafc !important;
}

.pgd .pgd-tab{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 10px 16px;
  border-radius: 999px;
  text-decoration:none;
  color: rgba(15,23,42,.74);
  border: 1px solid transparent;
  transition: transform .12s ease, background .12s ease, border-color .12s ease, color .12s ease;
  font-weight: 700;
  font-size: 13.5px;
  background: transparent !important;
}
.pgd .pgd-tab:hover{
  background: rgba(10,102,194,.08) !important;
  border-color: rgba(10,102,194,.20);
  color: var(--pg-primary-2);
}
.pgd .pgd-tab.is-active{
  background: var(--pg-primary) !important;
  border-color: var(--pg-primary);
  color: #fff;
  box-shadow: 0 6px 16px rgba(10,102,194,.28);
}

/* ==========================================================================
   Badges
   ========================================================================== */
.pgd .pgd-badge{
  display:inline-flex;
  align-items:center;
  padding: 6px 12px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
  border: 1px solid var(--pg-border);
  background: #f8fafc !important;
  color: rgba(15,23,42,.86);
}
.pgd .pgd-badge-success{
  background: rgba(22,163,74,.10) !important;
  border-color: rgba(22,163,74,.24);
  color: #0f5132;
}
.pgd .pgd-badge-warn{
  background: rgba(245,158,11,.12) !important;
  border-color: rgba(245,158,11,.26);
  color: #7a4a00;
}
.pgd .pgd-badge-danger{
  background: rgba(239,68,68,.10) !important;
  border-color: rgba(239,68,68,.24);
  color: #7f1d1d;
}
.pgd .pgd-badge-neutral{
  background: rgba(100,116,139,.10) !important;
  border-color: rgba(100,116,139,.22);
  color: rgba(15,23,42,.86);
}

/* ==========================================================================
   Alerts
   ========================================================================== */
.pgd .pgd-alert{
  padding: 13px 16px;
  border-radius: 14px;
  border: 1px solid var(--pg-border);
  background: #ffffff !important;
  color: rgba(15,23,42,.90);
  margin: 14px 0 0;
  box-shadow: 0 8px 18px rgba(2,6,23,.04);
  font-size: 14px;
}
.pgd .pgd-alert-success{
  background: rgba(22,163,74,.08) !important;
  border-color: rgba(22,163,74,.22);
}
.pgd .pgd-alert-warn{
  background: rgba(245,158,11,.10) !important;
  border-color: rgba(245,158,11,.24);
}
.pgd .pgd-alert-danger{
  background: rgba(239,68,68,.08) !important;
  border-color: rgba(239,68,68,.22);
}

/* ==========================================================================
   Buttons
   ========================================================================== */
.pgd .pgd-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding: 11px 18px;
  border-radius: 999px;
  text-decoration:none;
  font-weight: 700;
  font-size: 13.5px;
  border: 1px solid var(--pg-border);
  background: #fff !important;
  color: rgba(15,23,42,.92);
  cursor:pointer;
  transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease, background .12s ease;
  box-shadow: 0 8px 18px rgba(2,6,23,.04);
}
.pgd .pgd-btn:hover{
  transform: translateY(-1px);
  border-color: rgba(10,102,194,.26);
  box-shadow: 0 12px 24px rgba(2,6,23,.07);
}
.pgd .pgd-btn:active{ transform: translateY(0); }

.pgd .pgd-btn-primary{
  background: linear-gradient(180deg, var(--pg-primary), var(--pg-primary-2)) !important;
  border-color: var(--pg-primary);
  color: #fff;
}
.pgd .pgd-btn-primary:hover{ border-color: var(--pg-primary-2); }

.pgd .pgd-btn-secondary{ background: #fff !important; }

.pgd .pgd-btn-tertiary{ background: #f8fafc !important; }

.pgd .pgd-btn-danger{
  background: rgba(239,68,68,.10) !important;
  border-color: rgba(239,68,68,.22);
  color: rgba(127,29,29,.95);
}
.pgd .pgd-btn-danger:hover{
  background: rgba(239,68,68,.16) !important;
  border-color: rgba(239,68,68,.32);
}

.pgd .pgd-icon-btn{
  width: 42px;
  height: 42px;
  padding: 0;
  border-radius: 12px;
}
.pgd .pgd-icon-btn svg{
  fill: currentColor;
  opacity: .92;
}

/* Links */
.pgd .pgd-link{
  color: var(--pg-primary);
  text-decoration: none;
  border-bottom: 1px dashed rgba(10,102,194,.40);
}
.pgd .pgd-link:hover{ border-bottom-style: solid; }

.pgd .pgd-help{
  margin-top: 8px;
  font-size: 12.5px;
  color: var(--pg-muted2);
}
.pgd .pgd-inline{
  display:inline-flex;
  gap:8px;
  align-items:center;
  margin-left: 10px;
  color: rgba(15,23,42,.74);
}

/* ==========================================================================
   KV blocks
   ========================================================================== */
.pgd .pgd-kv-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-top: 16px;
}
.pgd .pgd-kv{
  border: 1px solid var(--pg-border);
  border-radius: 14px;
  padding: 14px 16px 12px;
  background: #fff !important;
  box-shadow: 0 8px 18px rgba(2,6,23,.04);
}
.pgd .pgd-k{
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--pg-muted2);
}
.pgd .pgd-v{
  margin-top: 6px;
  font-weight: 800;
  color: rgba(15,23,42,.92);
}

/* ==========================================================================
   Forms
   ========================================================================== */
.pgd .pgd-form{ margin-top: 16px; }

.pgd .pgd-form-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-top: 12px;
}

.pgd .pgd-field label{
  display:block;
  font-weight: 700;
  font-size: 13.5px;
  margin-bottom: 8px;
  color: rgba(15,23,42,.88);
}

.pgd .pgd-required{ color: var(--pg-danger); font-weight: 800; }

/* Inputs — fix: padding-ul era 3px 4px (bug), acum corect */
.pgd input[type="text"],
.pgd input[type="date"],
.pgd input[type="file"],
.pgd select,
.pgd textarea{
  width: 100%;
  height: 46px;
  padding: 11px 14px;
  border-radius: 12px;
  border: 1px solid rgba(15,23,42,.16);
  background: #fff !important;
  color: rgba(15,23,42,.92) !important;
  font-size: 14px;
  outline: none;
  transition: border-color .12s ease, box-shadow .12s ease, background .12s ease;
}

.pgd textarea{ height: auto; resize: vertical; min-height: 160px; padding: 12px 14px; }
.pgd input[type="file"]{ padding: 9px 12px; height: auto; }

.pgd input:focus,
.pgd select:focus,
.pgd textarea:focus{
  border-color: var(--pg-primary);
  box-shadow: var(--pg-ring);
}

.pgd select{
  appearance: none;
  background-image:
    linear-gradient(45deg, transparent 50%, rgba(15,23,42,.55) 50%),
    linear-gradient(135deg, rgba(15,23,42,.55) 50%, transparent 50%),
    linear-gradient(to right, transparent, transparent);
  background-position:
    calc(100% - 18px) 50%,
    calc(100% - 12px) 50%,
    0 0;
  background-size: 6px 6px, 6px 6px, 100% 100%;
  background-repeat: no-repeat;
  padding-right: 36px;
}

.pgd select:disabled{
  opacity: 1 !important;
  cursor:not-allowed;
  color: rgba(15,23,42,.55) !important;
  background: #f8fafc !important;
}

.pgd ::placeholder{ color: rgba(15,23,42,.40); }

/* ==========================================================================
   Table
   ========================================================================== */
.pgd .pgd-table-wrap{
  margin-top: 16px;
  border: 1px solid var(--pg-border);
  border-radius: 16px;
  overflow: hidden;
  background: #fff !important;
  box-shadow: 0 8px 20px rgba(2,6,23,.04);
}

.pgd .pgd-table{
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}

.pgd .pgd-table thead th{
  text-align: left;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(15,23,42,.62);
  background: #f8fafc !important;
  padding: 12px 14px;
  border-bottom: 1px solid rgba(15,23,42,.10);
}

.pgd .pgd-table tbody td{
  padding: 14px;
  border-bottom: 1px solid rgba(15,23,42,.08);
  vertical-align: top;
}
.pgd .pgd-table tbody tr:last-child td{ border-bottom: 0; }
.pgd .pgd-table tbody tr:hover td{
  background: rgba(10,102,194,.03) !important;
}

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width: 920px){
  .pgd .pgd-kv-grid{ grid-template-columns: 1fr; }
  .pgd .pgd-form-grid{ grid-template-columns: 1fr; }
  .pgd .pgd-header-right{ width: 100%; display:flex; justify-content:flex-start; }
}

@media (max-width: 640px){
  .pgd .pgd-wrap{ padding: 0 12px; }
  .pgd .pgd-card-inner{ padding: 16px; }
  .pgd .pgd-h1{ font-size: 22px; }

  .pgd .pgd-table thead{ display:none; }
  .pgd .pgd-table, .pgd .pgd-table tbody, .pgd .pgd-table tr, .pgd .pgd-table td{
    display:block;
    width: 100%;
  }
  .pgd .pgd-table tbody tr{
    border-bottom: 1px solid rgba(15,23,42,.10);
  }
  .pgd .pgd-table tbody td{
    border: 0;
    padding: 10px 14px;
  }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  .pgd .pgd-btn,
  .pgd .pgd-tab{ transition: none; }
}