/* Iraqi Companies ERP module styles (loads after app.css) */

.login-toggles {
  display: flex;
  justify-content: flex-end;
  gap: .4rem;
  margin-bottom: .8rem;
}

.erp-wizard-card { max-width: 820px; margin-inline: auto; }
.erp-wiz-hint { color: var(--muted); margin: 0 0 1rem; }
.erp-wiz-nav { display: flex; gap: .6rem; margin-top: 1.1rem; }
.erp-wiz-nav .btn-primary { flex: 1; }
.erp-industry-list { display: flex; flex-direction: column; gap: .45rem; margin-bottom: 1rem; }
.erp-industry-opt {
  display: flex;
  align-items: flex-start;
  gap: .7rem;
  padding: .7rem .85rem;
  border: 1px solid var(--border);
  border-radius: 12px;
  cursor: pointer;
  background: var(--surface);
}
.erp-industry-opt:has(input:checked) {
  border-color: var(--primary);
  background: var(--primary-soft, rgba(37, 99, 235, .08));
}
.erp-industry-opt input { margin-top: .25rem; }
.erp-industry-body { display: flex; flex-direction: column; gap: .2rem; }
.erp-industry-body small { color: var(--muted); font-size: .8rem; }
.erp-clone-list { display: flex; flex-direction: column; gap: .4rem; margin-bottom: .5rem; }

.erp-stats {
  width: 100%;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 1rem;
}
.erp-stats .stat {
  min-height: 96px;
  align-items: flex-start;
  overflow: visible;
}
.erp-stats .stat .l {
  white-space: normal;
  overflow: visible;
  text-overflow: unset;
  line-height: 1.4;
}
.erp-quick-nav {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: .7rem;
  margin: 0 0 1.2rem;
}
.erp-quick-link {
  display: flex;
  align-items: center;
  gap: .55rem;
  padding: .75rem .9rem;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--surface);
  color: var(--text);
  text-decoration: none;
  font-weight: 600;
  font-size: .9rem;
  transition: border-color .15s, transform .15s;
  font-family: inherit;
  cursor: pointer;
  text-align: start;
}
button.erp-quick-link {
  appearance: none;
  width: 100%;
}
.erp-quick-link:hover { border-color: var(--primary); transform: translateY(-1px); }
.erp-quick-link .byb-icon { color: var(--primary); }

@media (max-width: 980px) {
  .erp-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .erp-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* CSS bar chart (headcount by department) */
.bar-chart { display: flex; flex-direction: column; gap: .7rem; }
.bar-row { display: grid; grid-template-columns: 120px 1fr 44px; align-items: center; gap: .7rem; }
.bar-label {
  font-size: .84rem;
  font-weight: 600;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.bar-track {
  display: block;
  height: 14px;
  border-radius: 999px;
  background: var(--bg-soft, rgba(0,0,0,.06));
  overflow: hidden;
}
.bar-fill {
  display: block;
  height: 100%;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--primary, #2563eb), var(--teal, #0d9488));
  transition: width .4s ease;
}
.bar-value { font-weight: 700; font-size: .85rem; text-align: center; }

/* Low stock highlighting */
.low-stock-row td { background: var(--danger-soft, #fee2e2) !important; }
.theme-dark .low-stock-row td { background: rgba(220, 38, 38, .18) !important; }

/* Attendance sheet */
.att-options { display: flex; gap: .4rem; flex-wrap: wrap; }
.att-opt {
  display: inline-flex;
  align-items: center;
  gap: .3rem;
  padding: .3rem .65rem;
  border: 1px solid var(--border);
  border-radius: 999px;
  cursor: pointer;
  font-size: .8rem;
  font-weight: 600;
  color: var(--muted);
  user-select: none;
}
.att-opt input { accent-color: currentColor; margin: 0; }
.att-opt:has(input:checked) { color: #fff; border-color: transparent; }
.att-opt.att-present:has(input:checked) { background: var(--ok, #059669); }
.att-opt.att-absent:has(input:checked) { background: var(--danger, #dc2626); }
.att-opt.att-leave:has(input:checked) { background: var(--warn, #d97706); }
.att-sheet input[name^="note"] {
  padding: .35rem .55rem;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--bg);
  color: var(--text);
  width: 100%;
  min-width: 120px;
}

/* Attendance matrix report */
.att-matrix th, .att-matrix td { text-align: center; padding: .3rem .35rem; font-size: .78rem; }
.att-matrix .emp-cell { text-align: start; white-space: nowrap; font-weight: 600; }
.m-p { color: var(--ok, #059669); font-weight: 800; }
.m-a { color: var(--danger, #dc2626); font-weight: 800; }
.m-l { color: var(--warn, #d97706); font-weight: 800; }

/* Movements grid */
.move-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 1.2rem; }
.move-grid .panel { margin: 0; }

/* Ledger pager */
.pager { display: flex; gap: .35rem; flex-wrap: wrap; margin-top: 1rem; }
.pager a {
  display: inline-grid;
  place-items: center;
  min-width: 34px;
  height: 34px;
  border: 1px solid var(--border);
  border-radius: 9px;
  text-decoration: none;
  color: var(--text);
  font-weight: 600;
  font-size: .85rem;
}
.pager a.active { background: var(--primary); border-color: var(--primary); color: #fff; }

/* Shared bits (also used by HR/warehouses) */
.row-actions { white-space: nowrap; }
.row-actions form { margin: 0; }
.doc-ref { font-family: ui-monospace, Consolas, monospace; font-size: .8rem; font-weight: 700; color: var(--primary); }
.folder-edit { display: inline-block; position: relative; }
.folder-edit summary { list-style: none; cursor: pointer; display: inline-flex; }
.folder-edit summary::-webkit-details-marker { display: none; }
.inline-form {
  position: absolute;
  z-index: 30;
  display: flex;
  gap: .4rem;
  flex-wrap: wrap;
  margin-top: .4rem;
  padding: .6rem;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--surface);
  box-shadow: var(--shadow, 0 8px 24px rgba(0,0,0,.12));
  min-width: 230px;
}
.inline-form input { padding: .35rem .55rem; border: 1px solid var(--border); border-radius: 8px; background: var(--bg); color: var(--text); max-width: 160px; }
td { position: relative; }

.filter-row { display: flex; gap: .8rem; flex-wrap: wrap; align-items: flex-end; }
.filter-row label { display: flex; flex-direction: column; gap: .3rem; font-size: .8rem; font-weight: 600; color: var(--muted); }
.filter-row input, .filter-row select {
  padding: .45rem .6rem;
  border: 1px solid var(--border);
  border-radius: 9px;
  background: var(--bg);
  color: var(--text);
  min-width: 120px;
}
.filter-row button { margin-bottom: .1rem; }

.total-row th { font-weight: 800; border-top: 2px solid var(--border); }
.print-meta { color: var(--muted); font-size: .82rem; margin: .2rem 0 1rem; }

/* Print: clean tables only */
@media print {
  .app-topbar, .site-footer, .tabs, .no-print, .filter-row, .chip, .btn { display: none !important; }
  body { background: #fff !important; }
  .print-area { border: none !important; box-shadow: none !important; padding: 0 !important; }
  main.container.section { padding: 0 !important; max-width: 100% !important; }
  table.data th, table.data td { border: 1px solid #999 !important; color: #000 !important; }
  .badge { border: 1px solid #999; background: none !important; color: #000 !important; }
}

@media (max-width: 640px) {
  .bar-row { grid-template-columns: 90px 1fr 36px; }
  .filter-row label { flex: 1 1 45%; }
  .filter-row input, .filter-row select { min-width: 0; width: 100%; }
  .row-actions { white-space: normal; }
}
