/* Sales representative administration and scoped portal layouts. Theme values live in theme.css. */
.rep-admin-summary { display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:16px; }
.rep-admin-summary article { min-height:106px;padding:18px;background:var(--panel);border:1px solid var(--line);border-radius:14px;display:flex;align-items:center;gap:13px;box-shadow:var(--shadow); }
.rep-admin-summary small,.rep-admin-summary strong,.rep-admin-summary em { display:block; }
.rep-admin-summary small { color:var(--muted);font-size:13px; }
.rep-admin-summary strong { margin-top:4px;font:700 23px "Manrope"; }
.rep-admin-summary em { margin-top:3px;color:var(--muted);font-size:12px;font-style:normal; }
.rep-directory-panel { overflow:hidden; }
.rep-directory-tools { display:flex;align-items:center;gap:9px; }
.rep-directory { display:grid; }
.rep-directory-row { display:grid;grid-template-columns:minmax(190px,1.2fr) minmax(125px,.7fr) repeat(3,minmax(85px,.5fr)) auto;gap:12px;align-items:center;padding:18px 20px;border-top:1px solid var(--line);cursor:pointer; }
.rep-directory-row:hover { background:var(--surface-soft); }
.rep-directory-row:focus-visible { outline:2px solid var(--green);outline-offset:-3px;background:var(--surface-soft); }
.rep-identity { display:grid;grid-template-columns:46px 1fr;gap:12px;align-items:center; }
.rep-avatar { width:46px;height:46px;border-radius:13px;background:var(--green-soft);color:var(--green);display:grid;place-items:center;font-weight:800; }
.rep-identity strong,.rep-identity span:not(.rep-avatar),.rep-directory-stat strong,.rep-directory-stat span { display:block; }
.rep-identity strong { font-size:16px; }
.rep-identity span { margin-top:3px;color:var(--muted);font-size:13px; }
.rep-territory strong { display:block;font-size:14px; }
.rep-territory span { display:inline-flex;margin-top:5px;padding:4px 8px;border-radius:999px;background:var(--green-soft);color:var(--green);font-size:11px;font-weight:700; }
.rep-directory-stat span { color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.5px; }
.rep-directory-stat strong { margin-top:5px;font-size:15px; }
.rep-directory-actions { display:flex;gap:7px;justify-content:flex-end; }
.rep-directory-actions button { min-height:36px;padding:0 12px;white-space:nowrap; }
.rep-empty { padding:44px 20px;text-align:center;color:var(--muted); }
.rep-empty strong { display:block;color:var(--ink);font-size:17px;margin-bottom:4px; }
.rep-scope-hidden { display:none !important; }
body.rep-preview .nav-item[data-view="reps"],
body.rep-preview .nav-item[data-view="roadmap"] { display:none; }
body.rep-preview .nav-label.gap { display:none; }
body.rep-preview #customersView .relationship-map { display:none; }
body.rep-preview #customersView .section-head .button { display:none; }

.rep-hero-actions { display:flex;gap:9px;position:relative;z-index:1; }
.button.ghost-light { color:white;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.28); }
.scope-notice { display:flex;align-items:flex-start;gap:11px;margin:0 0 15px;padding:13px 15px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft); }
.scope-notice > svg { width:20px;color:var(--green);flex:none; }
.scope-notice strong,.scope-notice span { display:block; }
.scope-notice strong { font-size:14px; }
.scope-notice span { margin-top:2px;color:var(--muted);font-size:13px;line-height:1.45; }
.rep-portal-layout { display:grid;grid-template-columns:1.1fr .9fr;gap:15px;align-items:start; }
.rep-orders-card { grid-column:1 / -1; }
.rep-orders-card td,.rep-orders-card th { font-size:13px; }
.rep-orders-card td span { display:block;margin-top:2px;color:var(--muted);font-size:12px; }

.rep-config-modal { width:min(920px,94vw);max-height:92vh;overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:20px;color:var(--ink);box-shadow:0 30px 80px rgba(0,0,0,.28); }
.rep-config-header { display:flex;align-items:flex-start;justify-content:space-between;padding:22px 24px;border-bottom:1px solid var(--line); }
.rep-config-header h2 { margin:3px 0;font-size:24px; }
.rep-config-header p { margin:0;color:var(--muted);font-size:13px; }
.rep-config-body { padding:20px 24px; }
.rep-performance-strip { display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:20px; }
.rep-performance-strip div { padding:14px;border:1px solid var(--line);border-radius:11px;background:var(--surface-soft); }
.rep-performance-strip span,.rep-performance-strip strong { display:block; }
.rep-performance-strip span { color:var(--muted);font-size:11px; }
.rep-performance-strip strong { margin-top:5px;font-size:17px; }
.rep-config-grid { display:grid;grid-template-columns:1fr 1fr;gap:22px; }
.rep-config-grid section { min-width:0; }
.rep-config-grid h3 { margin:0 0 13px;font-size:16px; }
.rep-config-grid label { display:block;margin-top:11px;color:var(--muted);font-size:12px;font-weight:700; }
.rep-config-grid .text-input { width:100%;height:42px;margin-top:5px; }
.permission-note { display:flex;gap:8px;margin-top:14px;padding:11px;border-radius:9px;background:var(--surface-soft);color:var(--muted);font-size:12px;line-height:1.45; }
.permission-note svg { width:16px;flex:none;color:var(--green); }
.rep-permissions { display:grid;gap:8px;margin-top:14px; }
.rep-permissions span { display:flex;align-items:center;gap:7px;color:var(--muted);font-size:13px; }
.rep-permissions svg { width:15px;color:var(--green); }
.rep-config-footer { display:flex;justify-content:flex-end;gap:9px;padding:15px 24px;border-top:1px solid var(--line); }

@media (max-width:1100px) {
  .rep-directory-row { grid-template-columns:minmax(220px,1.3fr) minmax(140px,.8fr) repeat(2,minmax(95px,.55fr)) auto; }
  .rep-directory-stat.orders { display:none; }
}
@media (max-width:800px) {
  .rep-admin-summary,.rep-performance-strip { grid-template-columns:1fr 1fr; }
  .rep-directory-row { grid-template-columns:1fr auto;gap:12px; }
  .rep-territory,.rep-directory-stat { grid-column:1; }
  .rep-directory-actions { grid-column:2;grid-row:1 / span 4;flex-direction:column; }
  .rep-portal-layout,.rep-config-grid { grid-template-columns:1fr; }
  .rep-hero-actions { width:100%; }
  .rep-hero-actions .button { flex:1; }
}
@media (max-width:520px) {
  .rep-admin-summary,.rep-performance-strip { grid-template-columns:1fr; }
  .rep-directory-row { grid-template-columns:1fr; }
  .rep-directory-actions { grid-column:1;grid-row:auto;flex-direction:row;justify-content:flex-start; }
  .rep-config-body,.rep-config-header { padding:17px; }
}

@media (max-width:760px) {
  .rep-admin-summary {
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:7px;
  }
  .rep-admin-summary article {
    min-height:104px;
    flex-direction:column;
    justify-content:center;
    gap:7px;
    padding:10px 6px;
    text-align:center;
  }
  .rep-admin-summary .metric-icon { width:32px;height:32px;border-radius:9px; }
  .rep-admin-summary .metric-icon svg { width:16px; }
  .rep-admin-summary small { min-height:24px;font-size:10px;line-height:1.2; }
  .rep-admin-summary strong { margin-top:1px;font-size:15px;line-height:1.1;letter-spacing:-.3px; }
  .rep-admin-summary em { display:none; }

  .rep-directory-tools { flex-wrap:wrap;overflow:visible; }
  .rep-directory-tools .table-search { flex:1 0 100%;width:100%;min-width:0; }
  .rep-directory-tools .toolbar-result { flex:1 0 100%;margin-left:0; }
  .rep-directory { gap:10px;padding:10px; }
  .rep-directory-row {
    position:relative;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;
    grid-template-rows:auto auto auto;
    gap:10px 12px;
    padding:13px;
    border:1px solid var(--line);
    border-radius:12px;
    background:var(--surface-raised);
  }
  .rep-identity { grid-column:1 / 3;grid-row:1;grid-template-columns:38px minmax(0,1fr);gap:9px;padding-right:2px; }
  .rep-avatar { width:38px;height:38px;border-radius:10px;font-size:11px; }
  .rep-identity strong { font-size:14px; }
  .rep-identity span { margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px; }
  .rep-territory { grid-column:1 / -1;grid-row:2;display:flex;align-items:center;gap:7px;min-width:0; }
  .rep-territory strong { overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px; }
  .rep-territory span { flex:none;margin-top:0;padding:3px 7px;font-size:9px; }
  .rep-directory-stat { grid-row:3;min-width:0;padding-top:9px;border-top:1px solid var(--line); }
  .rep-directory-stat.sales { grid-column:1; }
  .rep-directory-stat.commission { grid-column:2; }
  .rep-directory-stat span { overflow:hidden;font-size:0;letter-spacing:.35px;white-space:nowrap; }
  .rep-directory-stat span::after { content:attr(data-mobile-label);font-size:9px; }
  .rep-directory-stat strong { margin-top:3px;overflow:hidden;text-overflow:ellipsis;font-size:13px;white-space:nowrap; }
  .rep-directory-stat.orders { display:none; }
  .rep-directory-actions {
    grid-column:3;
    grid-row:1;
    align-self:start;
    display:flex;
    flex-direction:row;
    gap:6px;
  }
  .rep-directory-actions button {
    width:34px;
    min-width:34px;
    min-height:34px;
    height:34px;
    padding:0;
  }
  .rep-directory-actions button span { display:none; }
  .rep-directory-actions button svg { width:15px;height:15px; }
}
