.wpac-jefe-app { max-width:900px; margin:20px auto; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif; background:#fff; border-radius:12px; box-shadow:0 4px 20px rgba(0,0,0,.08); overflow:hidden; }
.wpac-jefe-header { background:linear-gradient(135deg,#1a237e,#283593); color:#fff; padding:20px 25px; display:flex; justify-content:space-between; align-items:center; }
.wpac-jefe-header h2 { margin:0; font-size:20px; color:#fff; }
.wpac-jefe-tabs { display:flex; gap:0; border-bottom:2px solid #eee; overflow-x:auto; }
.wpac-jefe-tab { padding:12px 18px; border:none; background:none; cursor:pointer; font-size:13px; color:#666; border-bottom:3px solid transparent; white-space:nowrap; }
.wpac-jefe-tab:hover { color:#1a237e; }
.wpac-jefe-tab.active { color:#1a237e; border-bottom-color:#1a237e; font-weight:600; }
.wpac-jefe-panel { padding:20px 25px; display:none; }
.wpac-jefe-panel.active { display:block; }

/* Stats */
.wpac-jefe-stats { display:grid; grid-template-columns:repeat(auto-fit,minmax(120px,1fr)); gap:10px; margin-bottom:20px; }
.wpac-jefe-stat { text-align:center; padding:12px; border-radius:8px; }
.wpac-jefe-stat span { display:block; font-size:22px; font-weight:bold; }
.wpac-jefe-stat small { color:#555; font-size:11px; }
.wpac-jefe-stat.green { background:#e8f5e9; color:#2e7d32; }
.wpac-jefe-stat.orange { background:#fff3e0; color:#ef6c00; }
.wpac-jefe-stat.red { background:#ffebee; color:#c62828; }
.wpac-jefe-stat.blue { background:#e3f2fd; color:#1565c0; }
.wpac-jefe-stat.purple { background:#f3e5f5; color:#7b1fa2; }

/* Zones grid */
.wpac-jefe-zones-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:10px; }
.wpac-jefe-zone-card { background:#f9f9f9; border:1px solid #eee; border-radius:8px; padding:12px; }
.wpac-jefe-bar { height:6px; background:#eee; border-radius:3px; overflow:hidden; margin:6px 0 2px; }
.wpac-jefe-bar div { height:100%; border-radius:3px; }

/* Parking grid */
.wpac-jefe-parking-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(80px,1fr)); gap:8px; margin-bottom:15px; }
.wpac-jefe-space-box { padding:10px 6px; border-radius:8px; text-align:center; cursor:pointer; color:#fff; transition:transform 0.15s,box-shadow 0.15s; min-height:55px; display:flex; flex-direction:column; justify-content:center; align-items:center; }
.wpac-jefe-space-box:hover { transform:scale(1.08); box-shadow:0 4px 12px rgba(0,0,0,0.2); }
.wpac-jefe-space-box .wpac-jefe-space-num { font-weight:bold; font-size:14px; }
.wpac-jefe-space-box .wpac-jefe-space-plate { font-size:9px; opacity:0.9; margin-top:2px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width:70px; }

/* Parking list (legacy, keep for compat) */
.wpac-jefe-parking-list { display:flex; flex-direction:column; gap:6px; max-height:400px; overflow-y:auto; }
.wpac-jefe-space { display:flex; align-items:center; gap:10px; padding:8px 12px; border-radius:6px; border:1px solid #eee; }
.wpac-jefe-space.occupied { background:#fff5f5; border-color:#ffcdd2; }
.wpac-jefe-space.assigned { background:#f0f7fd; border-color:#bbdefb; }
.wpac-jefe-space.available { background:#f1f8e9; border-color:#c5e1a5; }
.wpac-jefe-space-num { font-weight:bold; min-width:60px; }
.wpac-jefe-space-info { flex:1; font-size:13px; }
.wpac-jefe-space-info small { color:#666; }
.wpac-jefe-space-status { font-size:18px; }
.wpac-jefe-space-actions { }
.wpac-jefe-btn-sm { padding:4px 10px; border:1px solid #ddd; border-radius:4px; background:#fff; cursor:pointer; font-size:11px; }
.wpac-jefe-btn-sm.danger { color:#dc3545; border-color:#dc3545; }

/* Zones list */
.wpac-jefe-zones-list { display:flex; flex-direction:column; gap:6px; }
.wpac-jefe-zone-row { display:flex; justify-content:space-between; align-items:center; padding:10px 12px; background:#f9f9f9; border-radius:6px; border:1px solid #eee; font-size:13px; }

/* Forms */
.wpac-jefe-form { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin-top:10px; }
.wpac-jefe-form input, .wpac-jefe-form select { padding:8px 10px; border:1px solid #ddd; border-radius:6px; font-size:13px; }
.wpac-jefe-btn { padding:8px 16px; background:#1a237e; color:#fff; border:none; border-radius:6px; cursor:pointer; font-size:13px; font-weight:600; }
.wpac-jefe-btn:hover { background:#283593; }
.wpac-jefe-btn.primary { background:#28a745; }
.wpac-jefe-btn.primary:hover { background:#218838; }

/* Config form */
.wpac-jefe-form-config fieldset { border:1px solid #eee; border-radius:8px; padding:15px; margin-bottom:15px; }
.wpac-jefe-form-config legend { font-weight:600; font-size:14px; padding:0 8px; }
.wpac-jefe-form-config label { display:block; margin:6px 0; font-size:13px; }
.wpac-jefe-field { display:flex; align-items:center; gap:8px; margin:6px 0; }
.wpac-jefe-field label { min-width:100px; font-size:13px; margin:0; }
.wpac-jefe-field input, .wpac-jefe-field select { padding:6px 10px; border:1px solid #ddd; border-radius:4px; }

/* Log */
.wpac-jefe-log-table { width:100%; font-size:12px; border-collapse:collapse; }
.wpac-jefe-log-table td { padding:6px 8px; border-bottom:1px solid #f0f0f0; }

@media(max-width:600px) {
    .wpac-jefe-tabs { flex-wrap:wrap; }
    .wpac-jefe-stats { grid-template-columns:repeat(2,1fr); }
    .wpac-jefe-form { flex-direction:column; }
}
