.admin-shell { min-height: 760px; display: grid; grid-template-columns: 250px 1fr; background: var(--canvas); }
.admin-sidebar { padding: 30px 20px; display: flex; flex-direction: column; color: #d9dfdb; background: #080b09; }
.admin-sidebar > div { padding: 10px 10px 28px; display: grid; }
.admin-label { margin-bottom: 10px; color: var(--lime); font-size: .68rem; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.admin-sidebar small { color: #7f8b84; }
.admin-sidebar nav { display: grid; gap: 4px; }
.admin-sidebar nav a { padding: 11px 12px; border-radius: 8px; font-size: .82rem; }
.admin-sidebar nav a:hover { color: var(--ink); background: var(--lime); }
.admin-back { margin-top: auto; padding: 12px; color: var(--lime); font-size: .78rem; }
.admin-main { min-width: 0; padding: 34px; }
.admin-header { margin-bottom: 24px; }
.admin-header h1 { margin-bottom: 6px; font-size: 2.6rem; }
.admin-header p { margin-bottom: 0; color: var(--muted); }
.metric-grid { margin-bottom: 20px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.metric-grid article { padding: 20px; display: grid; background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius-md); }
.metric-grid span { color: var(--muted); font-size: .75rem; }
.metric-grid strong { margin-block: 8px; font-size: 2rem; letter-spacing: -.04em; }
.metric-grid small { color: var(--success); }
.metric-grid.compact { grid-template-columns: repeat(5, 1fr); width: 100%; margin-top: 25px; }
.admin-two-column { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.admin-panel { margin-bottom: 20px; padding: 22px; background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius-md); }
.panel-heading { margin-bottom: 18px; }
.panel-heading h2 { margin-bottom: 4px; font-size: 1.25rem; }
.panel-heading p { margin: 0; color: var(--muted); font-size: .8rem; }
.panel-heading a, .panel-heading span { color: var(--muted); font-size: .76rem; }
.quick-actions { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.quick-actions a { padding: 16px; border: 1px solid var(--line); border-radius: 9px; font-size: .8rem; font-weight: 750; }
.quick-actions a:hover { border-color: var(--lime-strong); background: var(--lime-soft); }
.empty-copy { padding: 25px; color: var(--muted); text-align: center; background: var(--canvas); border-radius: 8px; }
.inline-form { display: flex; gap: 12px; align-items: center; }
.inline-form input { max-width: 520px; }
.admin-editor, .admin-list details { padding: 0 14px; margin-bottom: 10px; border: 1px solid var(--line); border-radius: 9px; }
.admin-editor summary, .admin-list summary { display: flex; align-items: center; gap: 9px; }
.admin-list small { color: var(--muted); }
.network-dot { width: 12px; height: 12px; background: var(--network-accent); border-radius: 50%; }
.admin-form { padding-block: 18px; display: grid; grid-template-columns: 1fr 1fr 1fr auto; gap: 12px; align-items: end; }
.admin-form.grid { grid-template-columns: repeat(4, 1fr); }
.admin-form label { margin: 0; }
.admin-form .span-2 { grid-column: span 2; }
.checkbox-label { min-height: 43px; display: flex; align-items: center; gap: 8px; }
.checkbox-label input { width: 17px; min-height: 17px; }
.row-editor { min-width: 90px; border: 0; }
.row-editor summary { padding: 7px; color: var(--lime-strong); }
.row-editor[open] { min-width: 760px; position: absolute; right: 30px; z-index: 10; padding: 20px; background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius-md); box-shadow: var(--shadow-md); }
.status-form { display: flex; gap: 6px; }
.status-form select { min-width: 150px; min-height: 34px; padding: 5px 8px; }
.document-chip { margin: 2px; padding: 4px 7px; display: inline-block; color: var(--lime-strong); background: var(--lime-soft); border-radius: 999px; font-size: .65rem; }
.ticket-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.ticket-grid article { padding: 20px; border: 1px solid var(--line); border-radius: 12px; }
.ticket-grid article > div, .ticket-grid footer { display: flex; justify-content: space-between; gap: 12px; color: var(--muted); font-size: .74rem; }
.ticket-grid h2 { margin: 20px 0 10px; font-size: 1.2rem; }
.ticket-grid p { color: #454c48; }
.ticket-grid footer { padding-top: 15px; flex-direction: column; border-top: 1px solid var(--line); }
.admin-result { background: var(--paper); }

@media (max-width: 1180px) {
  .admin-shell { grid-template-columns: 210px 1fr; }
  .metric-grid { grid-template-columns: repeat(2, 1fr); }
  .metric-grid.compact { grid-template-columns: repeat(3, 1fr); }
  .admin-form.grid { grid-template-columns: repeat(2, 1fr); }
  .quick-actions { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 800px) {
  .admin-shell { grid-template-columns: 1fr; }
  .admin-sidebar { position: static; }
  .admin-sidebar nav { grid-template-columns: repeat(2, 1fr); }
  .admin-back { margin-top: 20px; }
  .admin-main { padding: 20px 12px; }
  .admin-two-column, .ticket-grid { grid-template-columns: 1fr; }
  .admin-form, .admin-form.grid { grid-template-columns: 1fr; }
  .admin-form .span-2 { grid-column: auto; }
  .inline-form { align-items: stretch; flex-direction: column; }
  .row-editor[open] { min-width: min(90vw, 700px); right: 5vw; }
}

@media (max-width: 520px) {
  .metric-grid, .metric-grid.compact, .quick-actions { grid-template-columns: 1fr; }
  .admin-sidebar nav { grid-template-columns: 1fr; }
}

/* MTN inventory truth */
.inventory-summary-grid { margin-bottom: 18px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.inventory-summary-grid article { padding: 20px; display: grid; background: #fff; border: 1px solid var(--line); border-radius: 14px; }
.inventory-summary-grid span, .inventory-summary-grid small { color: var(--muted); }
.inventory-summary-grid strong { margin: 7px 0 3px; font-size: 1.8rem; }
.inventory-filter-form { margin-bottom: 14px; padding: 16px; display: grid; grid-template-columns: 1.5fr repeat(3, .8fr) auto auto; gap: 10px; align-items: end; background: #fff; border: 1px solid var(--line); border-radius: 14px; }
.inventory-filter-form label { display: grid; gap: 6px; color: var(--muted); font-size: .72rem; font-weight: 700; }
.inventory-result-heading { margin: 12px 0; display: flex; justify-content: space-between; gap: 16px; color: var(--muted); font-size: .75rem; }
.inventory-result-heading b { color: var(--ink); }
.inventory-admin-list { display: grid; gap: 12px; }
.inventory-admin-card { padding: 20px; background: #fff; border: 1px solid var(--line); border-radius: 15px; }
.inventory-admin-identity { display: grid; grid-template-columns: 74px 1fr; gap: 15px; align-items: center; }
.inventory-admin-image { width: 74px; height: 74px; padding: 6px; display: grid; place-items: center; background: #f5f7f6; border-radius: 12px; }
.inventory-admin-image img { max-width: 100%; max-height: 100%; object-fit: contain; }
.inventory-admin-identity span, .inventory-admin-identity small { color: var(--muted); font-size: .7rem; }
.inventory-admin-identity h2 { margin: 4px 0; font-size: 1.1rem; }
.inventory-admin-identity p { margin: 0 0 3px; color: #176044; font-size: .78rem; font-weight: 800; }
.inventory-admin-facts { margin: 16px 0 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.inventory-admin-facts div { padding: 10px; background: #f6f8f7; border-radius: 9px; }
.inventory-admin-facts .protected-cost { background: #fff7d8; }
.inventory-admin-facts dt { color: var(--muted); font-size: .61rem; text-transform: uppercase; }
.inventory-admin-facts dd { margin: 4px 0 0; font-size: .75rem; font-weight: 800; }
.inventory-admin-warning { margin-top: 12px; padding: 10px 12px; color: #654d08; background: #fff8db; border: 1px solid #ead583; border-radius: 9px; font-size: .72rem; }
.inventory-admin-card details { margin-top: 14px; border-top: 1px solid var(--line); }
.inventory-admin-card summary { padding-top: 13px; color: var(--lime-strong); font-size: .75rem; font-weight: 850; cursor: pointer; }
.inventory-merchandising-form { padding-top: 14px; display: grid; grid-template-columns: 1fr 1fr auto; gap: 10px; align-items: end; }
.inventory-merchandising-form label { display: grid; gap: 6px; font-size: .72rem; }
.inventory-merchandising-form label small { color: var(--muted); }
.inventory-merchandising-form .span-2 { grid-column: span 2; }
@media (max-width: 1050px) { .inventory-summary-grid, .inventory-admin-facts { grid-template-columns: 1fr 1fr; } .inventory-filter-form { grid-template-columns: 1fr 1fr; } }
@media (max-width: 720px) { .inventory-summary-grid, .inventory-admin-facts, .inventory-filter-form, .inventory-merchandising-form { grid-template-columns: 1fr; } .inventory-merchandising-form .span-2 { grid-column: auto; } .inventory-result-heading { flex-direction: column; } }
