:root {
  --enterprise-ink: #f8fafc;
  --enterprise-muted: #94a3b8;
  --enterprise-canvas: #020617;
  --enterprise-surface: #0f172a;
  --enterprise-line: rgba(255, 255, 255, 0.1);
  --enterprise-brand: #00f28f;
  --enterprise-brand-soft: rgba(0, 242, 143, 0.1);
  --enterprise-accent: #2d31ff;
  --enterprise-danger: #ef4444;
  --enterprise-warning: #f59e0b;
  --enterprise-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
}

body.enterprise-ui {
  background: var(--enterprise-canvas);
  color: var(--enterprise-ink);
  font-family: 'Plus Jakarta Sans', sans-serif;
  -webkit-font-smoothing: antialiased;
}

.enterprise-ui .topbar { 
  background: rgba(2, 6, 23, 0.8); 
  backdrop-filter: blur(20px);
  border-bottom: 1px solid var(--enterprise-line); 
}

.enterprise-panel { 
  background: var(--enterprise-surface); 
  border: 1px solid var(--enterprise-line); 
  border-radius: 24px; 
  padding: 32px; 
  box-shadow: var(--enterprise-shadow); 
}

.enterprise-kpi { 
  background: var(--enterprise-surface); 
  border: 1px solid var(--enterprise-line); 
  border-radius: 20px; 
  padding: 24px; 
}

.enterprise-shift { 
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid var(--enterprise-line); 
  border-radius: 16px; 
  padding: 20px; 
  transition: all 0.2s;
}

.enterprise-shift:hover {
  background: rgba(255, 255, 255, 0.05);
  border-color: var(--enterprise-brand);
}

.enterprise-tab { 
  background: rgba(255, 255, 255, 0.05); 
  border: 1px solid var(--enterprise-line); 
  border-radius: 12px; 
  color: var(--enterprise-muted);
}

.enterprise-tab.active { 
  background: var(--enterprise-brand); 
  color: #020617; 
  border-color: var(--enterprise-brand); 
}
.enterprise-profile-fields { display:grid; gap:18px; margin-top:18px; padding-top:18px; border-top:1px solid var(--enterprise-line); }
.enterprise-tag-editor { border:1px solid var(--enterprise-line); border-radius:8px; padding:12px; }
.enterprise-tags { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:10px; }
.enterprise-tags:empty { margin:0; }
.enterprise-skill { display:inline-flex; align-items:center; gap:6px; background:var(--enterprise-brand-soft); color:#075b43; border-radius:999px; padding:6px 9px 6px 12px; font-size:.84rem; font-weight:800; }
.enterprise-skill button { width:20px; height:20px; border:0; border-radius:50%; background:rgba(8,127,91,.12); color:inherit; cursor:pointer; }
.enterprise-check-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.enterprise-check { display:flex; align-items:center; gap:9px; min-width:0; border:1px solid var(--enterprise-line); border-radius:7px; padding:11px; background:#fff; font-size:.86rem; font-weight:700; }
.enterprise-check input { accent-color:var(--enterprise-brand); }
.enterprise-upload,.enterprise-contract { display:flex; justify-content:space-between; align-items:center; gap:14px; border:1px solid var(--enterprise-line); border-radius:8px; padding:14px; }
.enterprise-subsection { border:1px solid var(--enterprise-line); border-radius:8px; padding:16px; }
.enterprise-branch-list,.enterprise-contracts { display:grid; gap:8px; margin-top:12px; }
.enterprise-branch { display:grid; grid-template-columns:1fr 1.4fr auto; gap:8px; }
.enterprise-branch input { width:100%; border:1px solid var(--enterprise-line); border-radius:6px; padding:10px; }
.enterprise-ui .control-head { background:#fff; border:1px solid var(--enterprise-line); border-radius:8px; padding:22px; box-shadow:var(--enterprise-shadow); }
.enterprise-ui .stats { grid-template-columns:repeat(4,minmax(150px,1fr)); }
.enterprise-ui .stat { background:#fff; color:var(--enterprise-ink); border:1px solid var(--enterprise-line); box-shadow:var(--enterprise-shadow); }
.enterprise-ui .stat span { color:var(--enterprise-muted); }
.enterprise-ui .stat:nth-child(4),.enterprise-ui .stat:nth-child(5),.enterprise-ui .stat:nth-child(6) { border-top:4px solid var(--enterprise-danger); }
.enterprise-ui .panel { border-color:var(--enterprise-line); box-shadow:var(--enterprise-shadow); }

@media (max-width: 900px) {
  .enterprise-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .enterprise-grid { grid-template-columns:1fr; }
  .enterprise-ui .profile-grid { grid-template-columns:minmax(0,1fr); }
  .enterprise-ui .profile-main,.enterprise-ui .profile-sidebar { min-width:0; width:100%; }
  .enterprise-ui .stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 560px) {
  .enterprise-shell { width:min(100% - 24px,1240px); padding-top:22px; }
  .enterprise-heading { align-items:flex-start; flex-direction:column; }
  .enterprise-balance { text-align:left; }
  .enterprise-kpis { grid-template-columns:1fr 1fr; gap:9px; }
  .enterprise-kpi { padding:15px; }
  .enterprise-kpi strong { font-size:1.35rem; }
  .enterprise-panel { padding:16px; }
  .enterprise-chart { height:230px; }
  .enterprise-shift { grid-template-columns:8px minmax(0,1fr); }
  .enterprise-shift > :last-child { grid-column:2; justify-self:start; }
  .enterprise-check-grid { grid-template-columns:1fr 1fr; }
  .enterprise-upload { align-items:flex-start; flex-direction:column; }
  .enterprise-branch { grid-template-columns:1fr; }
}


/* Dark Mode Support */
body { transition: background-color 0.3s, color 0.3s; }
body.enterprise-dark { background-color: #101418; color: #f8fafc; }
body.enterprise-dark .form-card, body.enterprise-dark .enterprise-panel, body.enterprise-dark .enterprise-ui .control-head, body.enterprise-dark .enterprise-ui .stat, body.enterprise-dark .profile-sidebar, body.enterprise-dark .profile-main > section { background-color: #1e293b; color: #f8fafc; border-color: #334155; }
body.enterprise-dark .topbar { background-color: #0f172a; border-bottom-color: #334155; }
body.enterprise-dark .input-group input, body.enterprise-dark .input-group select, body.enterprise-dark .enterprise-check span { background-color: #0f172a; color: #fff; border-color: #475569; }
body.enterprise-dark .kmj-theme-toggle { background: #334155; color: #fff; border: 1px solid #475569; border-radius: 20px; padding: 6px 12px; cursor: pointer; font-size: 0.85rem; font-weight: 600; margin-left: 12px; }
